Call to undefined method appmodelsUser::find() yii2-admin

这个问题可能大家遇到的不多。

分析原因

问题出在 config/web.php 这个配置文件里面

'components' => [
        .....
        'user' => [
            'identityClass' => 'appmodelsUser',
            'enableAutoLogin' => true,
        ],
],

在这个文件里我们配置了user 所以默认他会使用我们配置过的user 但是我们自己建的model里面并没有声明它想要的 find() 方法

追踪代码可以发现经常用到这样一段代码

 如果配置了user 用的是 你自己定义的 model 类。 如果没有定义,使用它自己定义的 mdmadminmodelsUser 

解决方法

在 vendormdmsoftyii2-admin (yii2-admin插件的位置) 里面搜索 mdmadminmodelsUser

凡是 mdmadminmodelsUser 前面带三目运算的我们将判断去掉,直接将值赋值成为 mdmadminmodelsUser

操作

将  Yii::$app->getUser()->identityClass ? : 'mdmadminmodelsUser'  替换成  ‘mdmadminmodelsUser’

将 $this->userClassName ? : 'mdmadminmodelsUser' 替换成  ‘mdmadminmodelsUser’

原文地址:https://www.cnblogs.com/zhaoyang-1989/p/11755309.html