it-swarm.dev

La regola di convalida sul lato server non è stata trovata

Ho aggiunto un campo personalizzato a com_content e tutto ha funzionato meravigliosamente. Sto ora cercando di aggiungere un po 'di convalida lato server e dopo aver seguito tutti i tutorial e gli esempi che sono stato in grado di trovare, in particolare questo , non riesce perché la regola non viene trovata

La regola desiderata è quasi identica alla convalida di un nome utente, quindi l'ho copiata/rinominata come punto di partenza. I file/percorsi esistono, e load/save funziona correttamente.

Ci sono informazioni aggiuntive che non sto fornendo o forse nuovi occhi che mi faranno sentire sciocco quando viene sottolineato?

Dal B/E, facendo clic su "Salva" si genera questo errore:

Si è verificato un errore.

0 Manca la regola JForm :: validateField () mycode.

XML campo personalizzato (Funziona come previsto, tranne la convalida del server)

<?xml version="1.0" encoding="utf-8"?>
<form addfieldpath="/administrator/components/com_mycomponent/models/rules">
    <fields name="params">
        <fieldset name="MyFields" label="My Info">
            <field name="my_code"
                type="text" size="15"
                validate="mycode"
                label="My Code"
                />
        </fieldset>
    </fields>
</form>

/administrator/components/com_mycomponent/modelli/norme/mycode.php

//jimport('joomla.form.formrule');   does not work with or without this
class JFormRuleMycode extends JFormRule
{
    public function test(SimpleXMLElement $element, $value, $group = null, JRegistry $input = null, JForm $form = null) {
        return true;
    }
}
5
GDP

Sembra che tu debba specificare a cosa serve il percorso e metterlo nel posto giusto, lol! Il problema era nel specificare un percorso per campi anziché per regole!

Questa correzione ha risolto il problema:

<form>
    <fields name="params" addrulepath="/administrator/components/com_mycomponent/models/rules">
4
GDP