2013-02-24 3 views
1

Я реализовал переводимое расширение. Я использую объект Category (расширение дерева) и объект CategoryTranslation, как показано в документации. Все мои названия в субъекте категории находятся на французском языке. Я хотел бы перевести свой сайт на английском, так что я добавить перевод в локали 'en', например, так:Есть ли языковой стандарт по умолчанию для расширений доктрины?

$cat = $em->getRepository('MyBundle:Category')->findOneByTitle('Nourriture'); 
$cat->addTranslation(new CategoryTranslation('en', 'title', 'Food')); 
$em->persist($cat); 
$em->flush(); 

Но когда я проверяю mywebsite.com/en, я нахожу название Nourriture и не вместо этого, вместо того, чтобы указывать язык по умолчанию в config.yml: 'fr'.

И когда я проверяю mywebsite.com/fr, не было перевода моего названия, которое выглядит пустым. Поэтому я сделал то же самое, что и выше, но с 'fr' и «Nourriture» в качестве перевода для локали 'fr'.

Затем я перепроверяю mywebsite.com/fr, и он отлично работает, у меня есть заголовок Nourriture.

Но он все еще не работает для en locale, я не могу получить перевод на английский язык. Все происходит так, как если бы названия в моей категории были на английском, поэтому не нужно искать переводы 'en'.

ответ

2

если вы используете stof bundle то язык по умолчанию настроен так:

# app/config/config.yml 
stof_doctrine_extensions: 
default_locale: en_US 

В противном случае вы можете установить его непосредственно в listener Также вы можете прочитать документацию тщательно

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