Zend Framework 2 - Файлы перевода для модуля против файла глобального перевода

В настоящее время я использую индивидуальный подход к переводу. Т.е. у меня есть файлы перевода для каждого модуля отдельно. Но до меня дошло, что если мы используем translate('x') в модуле "foo" и "х" переводится как "у" в модуле "бар", translate('x') возвращает 'y' в модуле foo. Итак, мой вопрос, есть ли проблема, если я создаю один каталог для всех модулей? Потому что сейчас обновление языковых файлов немного раздражает.

Спасибо

1 ответ

Решение

Смысл использования трансляций для каждого модуля состоит в том, чтобы иметь отдельные домены трансляции, чтобы модули были независимыми и исключались конфликты ключей.

То, что вы в основном делаете translate('x', 'default')всегда возвращается 'y' если вы определите перевод 'x' в 'y' в домене 'default',

Если вы пишете свои модули как независимые, вы должны использовать разные домены перевода. Если вы не планируете использовать модули по отдельности, вы можете использовать только один домен перевода и один файл перевода, например, в модуле приложения или с помощью базы данных для хранения / обновления перевода.

Другие вопросы по тегам