2016-03-08 2 views
0

Я стараюсь ладить с услугами перевода в symfony2. Проблема я столкнулся в том, что этот код всегда возвращает английскую версию ключаSymfony2 перевод возвращает только английский

$translator = $this->get('translator'); 
$translator->setlocale('fr'); // locale gets ignored 
die($translator->trans('pisica')); //always outputs cat altough the translation in french exists too. 

Я хотел бы указать на контроллер ведьме локали я использую, потому что это лучше для того, что я пытаюсь acomplish

+0

Вы проверили http://symfony.com/doc/current/book/translation.html#handling-the-user-s-locale - согласно тому, что вы должны установить, прежде чем делать что-либо еще, вы может называть это слишком поздно. – LBA

+0

вы также можете определить локаль напрямую '$ translator-> trans ('pisica', array(), 'translation_domain', 'fr');' –

ответ

0

Установите Locale в объекте Request, а не в сервисе переводчика. $ request-> setLocale ('fr');

$ translator-> trans ('something');

Смежные вопросы