yii2-用户 Class 'yii\web\AccessControl' 未找到

yii2-user Class 'yii\web\AccessControl' not found

我正在尝试为我的 yii2 基本应用程序安装和配置 yii2-user 模块。但它不起作用:

首先将此添加到 composer.json 文件:

"dektrium/yii2-user": "*"

并更新了作曲家。然后在 config/web.php file:

中的 $config 而不是 components 部分添加这段代码
'modules' => [
    'user' => [
        'class' => 'dektrium\user\Module',
    ],
],

然后将其添加到 layouts/main。php :

$navItems=[
    ['label' => 'Home', 'url' => ['/site/index']],
    ['label' => 'Status', 'url' => ['/status/index']],
    ['label' => 'About', 'url' => ['/site/about']],
    ['label' => 'Contact', 'url' => ['/site/contact']]
  ];
  if (Yii::$app->user->isGuest) {
    array_push($navItems,['label' => 'Sign In', 'url' => ['/user/login']],['label' => 'Sign Up', 'url' => ['/user/register']]);
  } else {
    array_push($navItems,['label' => 'Logout (' . Yii::$app->user->identity->username . ')',
        'url' => ['/site/logout'],
        'linkOptions' => ['data-method' => 'post']]
    );
  }
echo Nav::widget([
    'options' => ['class' => 'navbar-nav navbar-right'],
    'items' => $navItems,
]);

我还有两个菜单按钮:"Sign in" 和 "Sign up" 然后当我尝试输入这个 url:

mysite/index.php?r=user%2Fregistration%2Fregister

来了:

Class 'yii\web\AccessControl' not found
in vendor/dektrium/yii2-user/controllers/RegistrationController.php at line 34

或者当我在我的应用程序中点击 登录 按钮时,出现 找不到页面 文件

我包括

yii\filters\AccessControl class

而不是

yii\web\AccessControl class

它对我有用