Call to undefined method app\models\User::find() yii2-admin


這個問題可能大家遇到的不多。

分析原因

問題出在 config/web.php 這個配置文件里面

'components' => [
        .....
        'user' => [
            'identityClass' => 'app\models\User',
            'enableAutoLogin' => true,
        ],
],

在這個文件里我們配置了user 所以默認他會使用我們配置過的user 但是我們自己建的model里面並沒有聲明它想要的 find() 方法

追蹤代碼可以發現經常用到這樣一段代碼

 

 

 如果配置了user 用的是 你自己定義的 model 類。 如果沒有定義,使用它自己定義的 mdm\admin\models\User 

解決方法

在 vendor\mdmsoft\yii2-admin (yii2-admin插件的位置) 里面搜索 mdm\admin\models\User

凡是 mdm\admin\models\User 前面帶三目運算的我們將判斷去掉,直接將值賦值成為 mdm\admin\models\User

操作

將  Yii::$app->getUser()->identityClass ? : 'mdm\admin\models\User'  替換成  ‘mdm\admin\models\User’

將 $this->userClassName ? : 'mdm\admin\models\User' 替換成  ‘mdm\admin\models\User’

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM