internationnalisation des messages standard des validators
Bonjour,
je commence avec symfony. J'ai pas mal cherché et je ne vois pas comment modifier le langage des messages d'erreur par défaut des validators (required, ...).
On peut ajouter un tableau contenant la traduction:
new sfValidatorString(array('required' => true), array('required' => 'Obligatoire')),
mais ça me parait contraire au principe d'internationalisation et de factorisation du code.
Mais j'espère être passé à côté de quelque chose.
.
Christophe.
[sf 1.4.x] internationnalisation des messages standard des validators
J'ai regardé les fichiers de traduction.
chapitre 8 - Internationalisation-and-Localisation
Code:
1 2 3 4 5 6 7 8 9 10
| $this->validatorSchema['name'] = new sfValidatorEmail(
array('min_length' => 2, 'max_length' => 45),
array('min_length' => 'Name "%value%" must be at least %min_length% characters.',
'max_length' => 'Name "%value%" must not exceed %max_length% characters.',[/I]
[I]Fichier XLIFF de traduction
<trans-unit>
<source>Name "%value%" must be at least %min_length% characters</source>
<target>Le nom "%value%" doit comporter un minimum de %min_length% caractères</target>
</trans-unit> |
Mais ce dont je veux parler, c'est des messages symfony. Lorsque j'instancie l'objet: new sfValidatorString(array('required' => true)... le message renvoyé par renderError() est "required". C'est ce type de message que j'aimerai avoir dans la langue définie pour le site. Par exemple, si je définie dans settings.yml i18n à on et default_culture à fr par exemple, je trouverai logique que le message soit "obligatoire". Non ?