سلام من توی سطح دسترسی کاربر به خطا خوردم کسی هست کمک کنه بهم
Schema::create('permission_role', function (Blueprint $table) {
$table->unsignedBigInteger('role_id');
$table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
$table->unsignedBigInteger('permission_id');
$table->foreign('permission_id')->references('id')->on('permissions')->onDelete('cascade');
$table->primary(['role_id' , 'permission_id']);
});
Schema::create('role_user', function (Blueprint $table) {
$table->unsignedBigInteger('role_id');
$table->foreign('role_id')->references('id')->on('roles')->onDelete('cascade');
$table->unsignedBigInteger('user_id');
$table->foreign('user_id')->references('id')->on('users')->onDelete('cascade');
$table->primary(['role_id' , 'user_id']);
});
public function boot()
{
$this->registerPolicies();
foreach($this->getPermissions() as $permission){
Gate::define($permission->name , function($user)use ($permission){
return $user->hasRole($permission->roles);
});
}
}
protected function getPermissions()
{
return Permission::with('roles')->get();
}
public function roles()
{
return $this->belongsToMany(Role::class);
}
public function hasRole($role)
{
if(is_string($role)){
return $this->roles->contains('name', $role);
}
return !! $role->intersect($this->roles)->count();
}

بله دوست عزیز چون من توی بخش سلکت چند دسترسی رو برای یک نقش ارسال میکردم برای همین خطا میداد باید بصورت ارایه ارسال میشد من به صورت زیر نوشتم
<select name="permission_id" id="permission_id" class="form-control" multiple>
که به این مدلی اصلاح باید میشد
<select name="permission_id[]" id="permission_id" class="form-control" multiple>
شاید پاسخ شما همینجا باشد