我的 Laravel 应用程序需要帮助。
我使用 spatie 角色和权限。
当我创建用户时,分配角色没问题。当我将更新同一个用户时,出现以下错误:
[2019-12-06 08:44:36] local.ERROR: 给定的角色或权限应该使用 guard
instead of `web`. {"userId":1,"exception":"[object] (Spatie\\Permission\\Exceptions\\GuardDoesNotMatch(code: 0): The given role or permission should use guard
而不是web
. 在/home/vagrant/code/test/vendor/spatie/laravel-permission/src/Exceptions/GuardDoesNotMatch.php:12)
public function store(StoreUserRequest $request)
{
$user = $this->repo->create( $request->all());
$user->assignRole($request->roles);
return $user;
}
public function update(UpdateUserRequest $request, User $user)
{
$user = $this->repo->update($user, $request->all());
$user->assignRole($request->roles);
return $user;
}
我添加protected $guard_name = 'web';
到用户模型但仍然是同样的问题。
怎么了?userId 有问题吗?