Php 控制器映射导致yii2控制台应用程序出错
模块节配置Php 控制器映射导致yii2控制台应用程序出错,php,yii2,yii2-user,phundament,Php,Yii2,Yii2 User,Phundament,模块节配置 'user' => [ 'class' => 'dektrium\user\Module', 'modelMap' => [ 'User' => 'app\models\DL\User', 'registrationForm' => 'app\models\DL\registrationForm', ],
'user' => [
'class' => 'dektrium\user\Module',
'modelMap' => [
'User' => 'app\models\DL\User',
'registrationForm' => 'app\models\DL\registrationForm',
],
'controllerMap' => [
/*'registration' => 'app\controllers\user\RegistrationController',
'admin' => 'app\controllers\user\AdminController'*/
],
'layout' => '@app/views/layouts/container',
'defaultRoute' => 'profile',
'admins' => ['admin'],
'enableFlashMessages' => false,
'params' => [
'menuItems' => [
'label' => 'Users',
'url' => ['/user/admin']
]
]
],
显示错误的Yii控制台应用程序(./Yii)
'正在调用未知方法:
app\controllers\user\AdminController::getHelpSummary()
如果我取消对controllerMap
部分的注释,我无法理解如果我的AdminController
扩展了web控制器而不是控制台,为什么它会自动加载控制台应用程序
这是来自用户模块的命令
您真的需要控制台中的用户模块吗 默认情况下,Yi2控制台和web应用程序具有独立的配置文件。如果您更改了此默认设置,并对这两个配置使用相同的配置,则必须注意一致性
您可以在
/yii
中检查已加载配置的列表。您需要为控制台应用程序指定有效的defaultRoute
使用'defaultRoute'=>'profile'
,/yii
可以尝试加载需要用户
模块的控制器
尝试将其添加到。我正在为yii2使用phundament模板。问题是我不能使用。/yii。它立即崩溃。您可以通过在
$console
中添加覆盖来删除用户
模块。是的,已经尝试过了。我添加了带有问题命令的屏幕。如果我从控制台部分重写这个模块,这个命令也会消失。然后你需要实现控制台应用程序所需的方法,以使其工作。也考虑过它,甚至尝试过它,结果它远不止一对方法。我想知道为什么在供应商文件夹中使用相同的控制器时没有错误。供应商类也不包含这些方法。我的控制台部分看起来与您提供的链接中的相同。我正在使用Phundament应用程序。或者我误解了什么?如果完全相同,并且$common
中的defaultController
设置为profile
,则它也适用于控制台。尝试将defaultController
移动到刚尝试过的位置。同样的效果。唯一帮助我的是将所有controllerMap
部分移动到web部件。