Включить файл перевода модулей вне модуля в Yii

У меня есть приложение Yii со следующей структурой
application/

    /framework
    /protect
        /modules
           /report
              /translation
               lang.php
        /views
        /controller
        /model

У меня есть рабочий язык перевода внутри модуля, но когда я пытаюсь получить доступ к языковому файлу lang.php из представления защищенного каталога вне модулей со следующим кодом

Yii::t('ReportModule.lang','Заголовок отчета');

Он показывает ошибку.

include(VreportModule.php): не удалось открыть поток: нет такого файла или каталога

Как сделать языковой файл модуля доступным вне модуля??


person anandasubedi    schedule 24.07.2014    source источник


Ответы (1)


В расширенном шаблоне я сделал это в main.php, вам, вероятно, нужно сделать это внутри вашего web.php

 'i18n' => [
        'translations' => [
            'general*' => [
                'class' => 'yii\i18n\PhpMessageSource',
                'basePath' => '@backend/messages/general',
                'sourceLanguage' => 'en',
            ],
          ],
       ],

И теперь я могу получить доступ к Yii::t('general','message'); Везде Структура папок такая:

\BasePath
    \language_code example( nl or nl_NL )
       \language file this time it's general.php

Дополнительная информация: документация Yii2

person Mirage    schedule 24.07.2014