laravel - Laravel 5.5 Spatie 权限不会创建角色
问题描述
我正在使用 laravel 5.5 和 spatie / laravel-permission ":" ^ 2.38 "。我创建了一个简单的控制器来创建角色,但 laravel 返回错误:
Illuminate \ Database \ Eloquent \ MassAssignmentException "name" 我的简单控制器是:
<?php
namespace App;
namespace App\Http\Controllers\UserRole;
use Illuminate\Http\Request;
use App\Http\Controllers\Controller;
use Illuminate\Database\Eloquent\Model;
use App\Role;
use App\Permission;
use DB;
class RolePermission extends Controller
{
public function create_role(){
Role::create(['name' => 'noc']);
}
}
解决方案
该问题与 Spatie 无关。您必须允许 Role 对象是可批量分配的。在您的情况下,您必须输入:
protected $fillable = ['name'];
到您的角色模型,或者:
protected $guarded = [];
在这里查看更多
推荐阅读
- javascript - 如何获取异步函数的值并保存
- shopify - shopify 将价格范围添加到搜索结果
- arrays - 如何自动引用不断扩展的数据列?
- go - 为什么在此处使用通道进行可变输出
- angular - agGrid 的自动行高属性不起作用
- ifttt - IFTTT | 如果 Gmail 主题是“XYZ”,则拨打电话
- javascript - 将鼠标悬停在表格单元格分隔符上时的悬停效果 HTML/CSS/JS
- javascript - 无法正确使用 insertAdjacentElement
- javascript - 如何使用 jquery 和 js 访问外部和不同的文档?
- byte - 查找字节内存位置中的位地址