console的配置文件中
return [
'id' => 'app-console',
'basePath' => dirname(__DIR__),
'bootstrap' => ['log'],
'controllerNamespace' => 'console\controllers',
'controllerMap' => [
'init-auth' => [
'class' => InitAuthController::class,
'adminClass' => 'common\models\Admin',
'superAdminId' => 1,
'superAdminRoleId' => 1,
'authRoleAttribute' => 'auth_role',
'authClass' => 'common\models\base\Auth',
'initRoles' => [
['超级管理员', '拥有所有权限', ['all'], 1],
],
],
'auth-generator' => [
'class' => AuthGeneratorController::class,
'genClass' => 'common\models\base\Auth',
'configFile' => '@common/models/base/auth-config.php',
],
'migrate' => [
'class' => 'yii\console\controllers\MigrateController',
'migrationPath' => [
'@console/migrations',
'@console/migrations/2016',
'@console/migrations/2017',
'@console/migrations/2018',
'@console/migrations/2019',
],
],
'queue'=>[
'class'=>\yii\queue\redis\Command::class,
'queue' => new \yii\queue\redis\Queue([
'redis' => $redisConfig// redis的配置
])
],
],
];
其实我们从执行queue的命令就知道一定是走的命令yii queue/listen,进去
yii\queue\redis\Command看一下的确是继承的controller,所以我们在controllerMap中写。(其中涉及到bootstrap的一些东西,需要大家仔细梳理,这里不累赘了)