2010-04-13 4 views

Répondre

7

De l'ZF Manual on Zend_Validate Validation Messages

$validator = new Zend_Validate_GreaterThan(); 
    $validator->setMessage('Please enter a lower value', 
         Zend_Validate_GreaterThan::NOT_GREATER); 

Et aussi:

Zend Framework est livré avec plus de 45 validateurs avec plus de 200 messages d'échec. Il peut être fastidieux de traduire tous ces messages. Mais pour votre commodité, Zend Framework est livré avec des messages de validation déjà pré-traduits. Vous pouvez les trouver dans le chemin /resources/languages de votre installation Zend Framework. Par exemple, pour traduire tous les messages de validation en allemand, il suffit d'attacher un traducteur à Zend_Validate en utilisant ces fichiers de ressources.

$translator = new Zend_Translate(
     'array', 
     '/resources/languages', 
     $language, 
     array('scan' => Zend_Locale::LOCALE_DIRECTORY) 
); 
    Zend_Validate_Abstract::setDefaultTranslator($translator); 

Bien sûr, vous pouvez également fournir vos propres traductions. Tout ce que vous avez à faire est de les mettre à la disposition de l'adaptateur de traduction. Fondamentalement, vous venez d'échanger la partie ci-dessus vers votre chemin personnalisé.

+0

Très utile, merci beaucoup. –

1

Je veux juste améliorer un peu la réponse de Gordon: un exemple de travail est

$translator = new Zend_Translate(
    'array', 
    'resources/languages', // you need to copy the resources folder 
          // (from your Zend Framework installation) 
          // in the application folder 

    'it', // 'it' for italian, 'fr' for french, etc. 
      // Just look at the directories 

    // Zend_Translate, NOT Zend_Locale 
    array(
     'scan' => Zend_Translate::LOCALE_DIRECTORY 
    ) 
); 

Zend_Validate_Abstract::setDefaultTranslator($translator); 

Cheers! Bruno

Questions connexes