Salut salut
Je suis sur un petit problème de traduction, enfin.. d'utilisation de l'objet $translator de symfony.
Mon translator marche bien quand je fais un setLocal('fr') j'ai bien tous mes libéllés fr et si je met setLocal('en') (english) ça fonctionne bien aussi.
Par défault, j'ai configurer sur "fr". ça fonctionne.
Là où ça craint, c'est que je fais un setLocal dans mon ControlleurA.php (rename exprès) et dans mon ControlleurB.php j'ai toujours fr alors que si je dump mon translator avant la redirection j'ai bien "en"
Controlleur A :
Ici je test différents manière d’appeler le translator. $lang est égale soit à "fr", soit à "en".
Ici on va dire que c'est "en"
A la suite de ces quelques lignes, je fais un,
Et donc que mon translator à fonctionné car je vois "Title" et non "Titre".
Par contre, j'ai un redirectToRoute qui me redirige vers mon ControlleurB.php
Controlleur B :
ici je vois que c'est "fr" et pas "en"... je comprend pas pk ...
Je suis sur un petit problème de traduction, enfin.. d'utilisation de l'objet $translator de symfony.
Mon translator marche bien quand je fais un setLocal('fr') j'ai bien tous mes libéllés fr et si je met setLocal('en') (english) ça fonctionne bien aussi.
Par défault, j'ai configurer sur "fr". ça fonctionne.
Là où ça craint, c'est que je fais un setLocal dans mon ControlleurA.php (rename exprès) et dans mon ControlleurB.php j'ai toujours fr alors que si je dump mon translator avant la redirection j'ai bien "en"
Controlleur A :
$lang = $session->get("lang");
$translator->setLocale($lang);
$request->setLocale($lang);
$this->container->get('translator')->setLocale($lang);
Ici je test différents manière d’appeler le translator. $lang est égale soit à "fr", soit à "en".
Ici on va dire que c'est "en"
A la suite de ces quelques lignes, je fais un,
echo "<pre>";
var_dump($translator->trans('LIB_TITLE'));
echo "</pre>";
die;
Et donc que mon translator à fonctionné car je vois "Title" et non "Titre".
Par contre, j'ai un redirectToRoute qui me redirige vers mon ControlleurB.php
Controlleur B :
$translatorBis = $this->get('translator');
echo "<pre>";
var_dump($translatorBis->getLocale());
echo "</pre>";
die;
ici je vois que c'est "fr" et pas "en"... je comprend pas pk ...