[英]Laravel giving error in foreach loop in spatie-permission
I was applying Spatie Laravel-permissions and coding to add permissions to roles. 我正在应用Spatie Laravel权限并进行编码以向角色添加权限。 and faced a error.
并遇到一个错误。
public function store(Request $request) {
//Validate name and permissions field
$this->validate($request, [
'name'=>'required|unique:'.config('permission.table_names.roles').'|max:10',
]
);
$name = $request['name'];
$role = new Role();
$role->name = $name;
$permissions = $request['permissions'];
$role->save();
//Looping thru selected permissions
if(count($permissions>0)){
foreach ($permissions as $permission) {
$p = Permission::where('id', '=', $permission)->firstOrFail();
//Fetch the newly created role and assign permission
$role = Role::where('name', '=', $name)->first();
$role->givePermissionTo($p);
}
}
return redirect()->route('roles.index')
->with('flash_message',
'Role'. $role->name.' added!');
}
So if someone please help me solve this problem. 因此,如果有人请帮助我解决此问题。
In your submit form use this 在您的提交表单中使用此
<input type="checkbox" name="permissions[]" value="{{ $r->id }}"> {{$r->display_name}} </li>
In controller catch these permissions like this 在控制器中捕获这样的权限
$permissions = $request->permissions;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.