web-dev-qa-db-fra.com

Comment puis-je fournir un message personnalisé pour une validation JFormRule ayant échoué?

Lors de la validation d'un champ personnalisé et que le test échoue, Joomla renvoie le message d'erreur par défaut suivant:

**Warning** Invalid field: My Field

Comment puis-je spécifier le message qui est renvoyé pour expliquer pourquoi il est invalide?

7
GDP

Ajoutez l'attribut message, mais mieux comme ceci:

<field name="my_code" type="text" size="15" label="My Code"
  validate="myrule" message="Field may only contain A-z or 0-9" />

:)

3
Fedik

Pour un message qui peut varier, ajoutez l'attribut message comme ceci:

public function test(SimpleXMLElement $element, $value, $group = null, JRegistry $input = null, JForm $form = null)
{
    if(!preg_match('/^[a-z0-9]+$/i', $value)) {
        $element->addAttribute('message', 'Field may only contain A-z or 0-9');
        return false;
    }elseif(!$somethingelse) {
        $element->addAttribute('message', 'Something else is wrong');
        return false;
    }
1
GDP