9

我正在为 Windows 8 使用 xampp,并且我最近安装了dektrium/yii2-user. 我已按照此处的安装说明进行操作:

https://github.com/dektrium/yii2-user/blob/master/docs/installation.md

我的 web.php 的更改部分现在看起来像这样:

'user' => [
            'identityClass' => 'app\models\User',
            'enableAutoLogin' => true,
            'class' => 'dektrium\user\Module',

        ],

我收到错误:

Missing required parameter "id" when instantiating "dektrium\user\Module".

当我删除

    'class' => 'dektrium\user\Module',

错误消失。

4

1 回答 1

25

很可能您在错误的部分 ( ) 中插入了这一行components

'components' => [
    'user' => [
        'identityClass' => 'app\models\User',
        'enableAutoLogin' => true,
        // You inserted it here
    ],
],

yii2-user不是组件,它是模块。因此,您应该将其包含modulesconfig. 它还在文档中提到:

'modules' => [
    'user' => [
        'class' => 'dektrium\user\Module',
    ],
],

安装后基本应用程序没有任何模块,因此在这种情况下,您应该自己创建此部分。

于 2015-01-01T10:54:10.940 回答