我有一些功能,我想添加到yii\console\controllers\MessageController::actionExtract()
。
通常我所做的 - 用我自己的控制器扩展yii控制器并将其放到app\commands
目录。
<?php
namespace app\commands;
class MessageController extends \yii\console\controllers\MessageController{ /* .. */ }
出于测试目的,我添加了名为actionTest
的方法。
当我执行> yii
命令时,我得到的只是
现在我复制粘贴了完全相同的控制器,并将其重命名为MsgController
。以前的控制器完好无损。
所以现在> yii
给了我
yii message / test - '未知命令消息/测试'
yii msg / test - '确定'
我的app \ config \ console.php有'controllerNamespace' => 'app\commands'
如何正确扩展MessageController并继续使用标准yii命令(意味着不更改控制器名称以获得新命令)?
答案 0 :(得分:2)
像你一样扩展控制器并在控制台配置中添加:
'controllerMap' => [
'message' => 'app\commands\MessageController',
],