Yii2-将控制器扩展到现有模块中



我想将控制器从后端/控制器扩展到我现有的模块中。我的Yii2应用程序中的目录结构如下。

``

  • 后端

    • 控制器
      • JobOrderController
    • 视图
      • 工单
  • 模块

    • 营销
      • 控制器
        • JobOrderController[从@backend\controllers\JobOrderController扩展]

``

当我访问路由:localhost/marketing/job order时,我收到一条错误消息:

``找不到视图-yii\base\ViewNotFoundException视图文件不存在:../../advanced/backend/modules/merketing/views/job order/index.php

``

我不想改变市场营销模块的任何观点,这可能吗?

只需在模块配置中使用controllerMap。同时设置视图文件夹。

public function init()
{
parent::init();

// custom initialization code goes here
$this->controllerMap = [
'job-order' => [
'class' => 'backendcomponentscontrollersJobOrderController',
'viewPath' => Yii::getAlias('@backend') . '/components/views/job-order'
]
];
}

最新更新