为了账号安全,请及时绑定邮箱和手机立即绑定

laravel-5.5使用 permission 出现 Column 'model_id' cannot be null?

laravel-5.5使用 permission 出现 Column 'model_id' cannot be null?

PHP
蝴蝶刀刀 2019-03-15 14:52:11
错误信息 SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'model_id' cannot be null (SQL: insert into `ks_model_has_permissions` (`model_id`, `model_type`, `permission_id`) values (, App\User, 2)) 调下面这句出现的错误 $user->givePermissionTo('add articles'); 详细代码片段 appUser.php <?php namespace App; use Illuminate\Notifications\Notifiable; use Illuminate\Foundation\Auth\User as Authenticatable; use Spatie\Permission\Traits\HasRoles; class User extends Authenticatable { use Notifiable; use HasRoles; protected $fillable = [ 'name', 'email', 'password', ]; protected $hidden = [ 'password', 'remember_token', ]; } appHttpControllersHomeController.php <?php namespace App\Http\Controllers; use Illuminate\Http\Request; use Spatie\Permission\Models\Role; use Spatie\Permission\Models\Permission; use app\User; class HomeController extends Controller { public function __construct() { $this->middleware('auth'); } public function index(User $user) { $user->givePermissionTo('add articles'); } }
查看完整描述

3 回答

?
aluckdog

TA贡献1847条经验 获得超7个赞

$user = User::findOrFail($id); //$id 指的是users的ID,也就是用户ID

那么model_id指的是什么? 就是App\User User模型的ID

相关资料

资料1
资料2

查看完整回答
反对 回复 2019-03-18
?
LEATH

TA贡献1936条经验 获得超6个赞

 Column 'model_id' cannot be null (SQL: insert into `ks_model_has_permissions` (`model_id`, `model_type`, `permission_id`) values (, App\User, 2))
  • 很明显了啊 model_id 字段不能为空,你看看你 SQL : values (, App\User, 2)
查看完整回答
反对 回复 2019-03-18
?
jeck猫

TA贡献1909条经验 获得超7个赞

values ('', AppUser, 2) 没有用过,但没值也给传个空的吧

查看完整回答
反对 回复 2019-03-18
  • 3 回答
  • 0 关注
  • 586 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信