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

這個問題可能你們遇到的很少。php

分析緣由web

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

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

在這個文件裏咱們配置了user 因此默認他會使用咱們配置過的user 可是咱們本身建的model裏面並無聲明它想要的 find() 方法app

追蹤代碼能夠發現常常用到這樣一段代碼yii

 

 

 若是配置了user 用的是 你本身定義的 model 類。 若是沒有定義,使用它本身定義的 mdm\admin\models\User ide

解決方法this

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

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

操做code

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

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

相關文章
相關標籤/搜索