Traduction label formulaire
Bonjour,
je me lance a travers un projet dans zend Framework, et je suis pour le moment en train des tester les traductions.
Donc voila ce que j ai fait
dans mon config.ini
Code:
1 2 3 4 5 6 7
| ;initialisation des traductions
resources.translate.adapter = "array"
resources.translate.default = fr
resources.translate.data = APPLICATION_PATH "/languages"
resources.translate.options.scan = "filename"
resources.translate.options.disableNotices = true
resources.translate.options.logUntranslated = true |
puis dans le fichier fr.php
Code:
1 2 3 4 5
| <?php
return array(
'key_1'=>'Traduction 1',
'key_2'=>'Traduction 2',
); |
et donc si je veux récupérer une string traduite dans une vue
je fais dans mon action
Code:
1 2
| $t = Zend_Registry::get('Zend_Translate');
$this->view->toto = $t->translate('key_1'); |
et dans ma vue
Code:
<?php echo $this->toto; ?>
jusque tout va bien, le problème est quand j'essaye de traduire un label de formulaire.
pour j ai fait fait dans mon form
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
| <?php
class Application_Form_Login extends Zend_Form
{
public function init()
{
$t = Zend_Registry::get('Zend_Translate');
$this->setName("login");
$this->setMethod('post');
//$this->setDisableLoadDefaultDecorators(true);
$this->addElement(
'text', 'username', array(
'filters' => array('StringTrim', 'StringToLower'),
'validators' => array(
array('StringLength', false, array(0, 50)),
),
'required' => true,
'label' => $t->translate('key_2');,
));
} |
et bien contre tout attente ca ne marche pas et recoit la notification suivante :
Citation:
Notice: Untranslated message within 'fr': Traduction 2 in C:\wamp\www\zf-auth-tutorial\library\Zend\Translate\Adapter.php on line 824
j ai l'impression qu'il essaye de traduite la traduction ?
peut être mon approche est pas bonne et je n ai pas trouvé de solution sur le forum ou sur google.
Donc si une bonne âme pouvait m'aider ...
Par avance merci
Séb