edit () 方法中添加了 $this->authorize ('update', $user); 后报错
在浏览器中访问 http://weibo.test/users/1/edit
页面报错如下:
Argument 1 passed to App\Policies\UserPolicy::update() must be an instance of App\Models\User, instance of App\User given
原因分析:
这是因为当前传递的User
模型不是 App\Models\User
,而是 App\User
。
解决方法:
修改 config/auth.php
文件的第 68 行,
修改前:
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\User::class,
],
],
修改后:
'providers' => [
'users' => [
'driver' => 'eloquent',
'model' => App\Models\User::class,
],
],
推荐文章: