1

我想知道是否有办法从模型访问模块实例。在我的模块配置中,我需要在模型类中调用一些组件,模型仅在我的模块中定义。我知道该方法Yii::$app->getModule('my-module'),但这意味着每次都必须使用相同的名称定义模块,从控制器的模块中我可以访问$this->module->component-name,模型中的类似内容?

4

2 回答 2

4

您可以使用ModelClassName::getInstance(),但现在它仅在模块已经初始化时才有效。这应该在2.0.15左右更改。

于 2017-07-24T12:11:55.543 回答
1

是的,您可以像这样访问模块实例:

$module = MyModuleClass::getInstance();

然后你可以通过

$module->id

有关更多信息,请查看此处

于 2017-07-24T12:13:10.887 回答