Yii2,子文件夹中的命令 class
Yii2, Command class in subfolder
我们有文件夹 /commands/
,我们应该在其中放置 yii\console\Controller
classes 创建这样的命令后,我们可以在控制台中调用它,如 php yii controllerName/action
,它将被调用。
但是当我们创建子文件夹 /commands/testdata/
并将我们的控制台 class 放在那里时,在执行 php yii testdata/controllerName/action
时什么也没有发生(我的意思是错误,这样 controller\action 没有不存在)?
所以问题是,如何从控制台中的子文件夹调用命令?
为什么不将控制器文件夹放在根文件夹中?我为我的命令使用一个单独的文件夹。像这样:
rootfolder
Commands
Controllers
Views
Models
etc..
这样您就可以轻松地从根目录导航 (/app/controllers/yourcontroller.php).
在此处找到解决方案http://www.yiiframework.com/doc-2.0/guide-structure-controllers.html#controller-class-naming
因此,如果我们在 /commands/test/UserTestController
中有控制器,并从控制台执行 actionCreateEmpty
操作,我们应该将其命名为 php yii test/user-test/create-empty
我们有文件夹 /commands/
,我们应该在其中放置 yii\console\Controller
classes 创建这样的命令后,我们可以在控制台中调用它,如 php yii controllerName/action
,它将被调用。
但是当我们创建子文件夹 /commands/testdata/
并将我们的控制台 class 放在那里时,在执行 php yii testdata/controllerName/action
时什么也没有发生(我的意思是错误,这样 controller\action 没有不存在)?
所以问题是,如何从控制台中的子文件夹调用命令?
为什么不将控制器文件夹放在根文件夹中?我为我的命令使用一个单独的文件夹。像这样:
rootfolder
Commands
Controllers
Views
Models
etc..
这样您就可以轻松地从根目录导航 (/app/controllers/yourcontroller.php).
在此处找到解决方案http://www.yiiframework.com/doc-2.0/guide-structure-controllers.html#controller-class-naming
因此,如果我们在 /commands/test/UserTestController
中有控制器,并从控制台执行 actionCreateEmpty
操作,我们应该将其命名为 php yii test/user-test/create-empty