Yii2: 无法执行 RBAC 迁移(您应该配置 "authManager"...)

Yii2: Cannot perform RBAC migration (You should configure "authManager"...)

正如所描述的那样here我正在尝试进行迁移,以便让 yii 创建用户身份验证表。但是我得到错误:

Exception 'yii\base\InvalidConfigException' with message 'You should configure "authManager" component to use database before executing this migration.'

配置中存在 authManager,但我仍然收到该错误。配置:

'components' => [
    ...
    'db' => $db,
    'authManager'  => [
        'class'        => 'yii\rbac\DbManager',
        //            'defaultRoles' => ['guest'],
    ],
    ...
],

有什么问题?

问题很简单:没有使用配置。 yii migrate 是一个控制台命令,通常这些命​​令的配置放在一个单独的文件中。

yii2-app-base 模板的情况下,我从中创建了我的应用程序,有一个 config/console.php 配置文件需要在其中声明 authManager .仅在 config/web.php 中声明是不够的。

yii2-app-advanced 的情况下,authManager 应该在 console/config/main.php 中声明,而不是在后端或前端配置文件中声明。