我真的需要一些帮助。
我在项目中创建了两个模块: admin 和帐户。 在我的 admin 模块中,我有用户模型。
我已设法使用以下结构翻译管理模块:
modules
-admin
-models
-controllers
-views
-messages
- en
user.php
- ru
user.php
-AdminModule.php
并使用以下表达式Yii::t("adminModule.user","Username")
输出我翻译的消息。
但是,如果我尝试从帐户模块访问用户模型,则此功能无效。字段未翻译,应用程序甚至是例外:
include(adminModule.php): failed to open stream: No such file or directory
似乎我无法包含 admin 模块。所以我尝试在我的帐户/ AccountModule.php
中导入如下 public function init() {
$this->setImport(array(
'account.models.*',
'account.components.*',
'application.modules.admin.models.*',
'application.modules.admin.messages.*',
));
}
在我的主 config 文件中,我添加了以下代码行,因为它已被建议。 但没有帮助,我仍然有同样的例外。
'sourceLanguage' => 'en',
'language' => 'ru',
我已尝试过以下资源中建议的大量内容
另请阅读Yii文档
但是没有任何帮助我。
如果有人有想法,请向您寻求帮助, 提前致谢
答案 0 :(得分:0)
解决方案非常简单。 我试图以错误的方式导入管理模块:
public function init() {
$this->setImport(array(
'account.models.*',
'account.components.*',
'application.modules.admin.models.*',
'application.modules.*'
));
}
通过这样做,我假设导入了我的所有模块,包括管理模块。但我错了。
正确的方法是使用以下声明!
public function init() {
...
'application.modules.admin.AdminModule'
));
}