Не работает интернационализация

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
delias
Сообщения: 41
Зарегистрирован: 2011.10.07, 11:44

Не работает интернационализация

Сообщение delias »

Не могу найти причину, что делаю не так?
В настройках указан язык:

Код: Выделить всё

return array(
    ...
    'sourceLanguage' => 'ru',
    'language' => 'ru',
        ...
 
т.е. исходный язык и язык по умолчанию русский. Далее мне нужно перевести меню на английский язык, если пользователь выберет его.
Для начала просто вручную включаю английский Yii::app()->language = 'en';
а в файле messages/en/main_ui.php пишу слова для перевода:

Код: Выделить всё

<?php
return array(
    'О нас' => 'About',
...
 
Итого в view получается примерно это:

Код: Выделить всё

<?php Yii::app()->language = 'en'; ?>
...        
<?php
   echo Yii::app()->language; // en
?>
<div id="main">
    <div id="menu_text">
        <ul>
            <li><a href="#" class="current"><?php echo Yii::t('main_ui', 'О нас'); ?></a></li>
Но не переводит - что уже не пытался делать, менял конфиги с en на ру и обратно, пробовал указывать язык в контроллере, выводится "О нас" на русском, хоть убейте меня. Что я делаю не так?

kukuruku
Сообщения: 1311
Зарегистрирован: 2011.02.14, 11:36

Re: Не работает интернационализация

Сообщение kukuruku »

может изза того что ключ массива на русском?

delias
Сообщения: 41
Зарегистрирован: 2011.10.07, 11:44

Re: Не работает интернационализация

Сообщение delias »

Пробовал по разному, и так тоже:

Код: Выделить всё

Yii::t('main_ui', 'About_ru', 'en');
....
'About_ru' => 'About_en', 

delias
Сообщения: 41
Зарегистрирован: 2011.10.07, 11:44

Re: Не работает интернационализация

Сообщение delias »

Переименовал main_ui.php на main.php - ЗАРАБОТАЛО!
???

Anatolij
Сообщения: 30
Зарегистрирован: 2011.12.03, 19:07

Re: Не работает интернационализация

Сообщение Anatolij »

delias писал(а):Переименовал main_ui.php на main.php - ЗАРАБОТАЛО!
???
Может была ошибка в названии файла? Может он был main-ui.php или еще как-нибудь?

Ответить