我刚刚更新到Yii 2.0.4,现在我的自定义控制台命令无效。但是,默认的Hello仍然有效。
$ yii hello
hello world
$ yii kw
Error: Unknown command "kw".
$ ls commands
HelloController.php KWController.php
它在2.0.3之前就开始工作了。
奇怪,因为它本身出现在yii
命令中:
$ yii | grep hello
- hello This command echoes the first argument that you have entered.
hello/index (default) This command echoes what you have entered as the message.
$ yii | grep kw
- kw
我正在开发Windows。
答案 0 :(得分:2)
问题可能出在您的控制器名称的情况下... kw
命令默认会查找KwController.php
,如果您的文件系统找不到KWController.php
区分大小写。
您可以通过重命名文件来解决此问题,或者如果您不想这样做,请手动将控制器文件添加到controllerMap
文件中的yii
:
$application = new yii\console\Application($config);
$application->controllerMap['kw'] = 'console\controllers\KWController';