2012-11-08 1 views
1

Я прочитал здесь ответ на вопрос о двуязычном atk, но мне интересно, адаптирована ли система для международного использования?Локализация Agile Toolkit

Я проверил функциональность CRUD (v 4.2) и не вижу, что, например, метки кнопок (Add, Edit, Delete) запускаются через функцию _().

Любые планы на это? Если необходимо, и ATK - правильный путь, могу ли я помочь? Если да, то как?

+0

Вы правы, их нет, они жестко закодированы, но вы всегда можете заменить CRUD по умолчанию своим собственным CRUD (пожалуйста, сделайте это правильно, на веб-сайте есть инструкции, как продлить) и замените функцию, которая содержит (init в этом случае): $ this-> add_button = $ this-> grid-> addButton ('Добавить'); К $ this-> add_button = $ this-> grid-> addButton ('Добавить') -> setLabel (_ ('Добавить')); Я делаю это из памяти в основном, поэтому, пожалуйста, дайте мне знать, если не так. –

+0

улучшил мой ответ. – romaninsh

+0

см. Также http://stackoverflow.com/questions/9252573/a-bilingual-application-on-agile-toolkit-with-language-selector-for-the-user?rq=1 – romaninsh

ответ

1

Настоящая ветка локализации.

https://github.com/atk4/atk4/tree/locale

они называют $ this-> апи -> _(), который вы можете изменить и сделать его называют _() или любым другим способом.

$this->add('translation/Controller_Basic') 
    ->setLocale('de')      // default language 
    ->setModel('translation/Translation'); // use your model if you wish 

$this->routePages('translation');   // adds translation/admin page 

$this->add('Button')->setLabel('Localization Test'); 

Если вы используете контроллер перевода с отладочным аргументом, он добавит смайлики всех нелокализованные строк:

$this->add('translation/Controller_Basic',array('debug'=>true)) 

записи, которые без перевода будет автоматически добавлены через модель.

+0

Это теперь было втянуто в мастера , Вот соответствующее дополнение: https://github.com/atk4/atk4-addons/tree/master/translation – romaninsh