我有以下结构的Yii申请 应用/
/framework
/protect
/modules
/report
/translation
lang.php
/views
/controller
/model
我在模块内部有工作语言翻译,但是当我尝试从受保护目录的视图中访问语言文件lang.php时,使用以下代码
Yii :: t(' ReportModule.lang','报告标题');
显示错误。
include(VreportModule.php):无法打开流:没有这样的文件或目录
如何在模块外部访问模块语言文件?
答案 0 :(得分:0)
在高级模板中,我在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 documentation