1

我知道如何为用户分配权限。

class User extends Authenticatable
{
   use HasRoles;
}

$user->givePermissionTo('edit articles');

在这种情况下,model_has_permissions 表将像这样插入。

permission_id=> $permission_id
model_type=> "App\Models\User"
model_id=> $user_id

我有团队模型,我也想授予团队权限。这就是我所做的。

class Teamextends Authenticatable
{
   use HasRoles;
}

$team->givePermissionTo('edit articles');

我想要这个结果,

permission_id=> $permission_id
model_type=> "App\Models\Team"
model_id=> $team_id

但这对我不起作用。有没有人有以上经验?我应该为它再做一张桌子吗?喜欢team_has_permission

4

1 回答 1

1

我找到了解决方案!

class Team extends Authenticatable
{
   use HasRoles;
   protected $guard_name = 'web';
}

$team->givePermissionTo('edit articles');

这运作良好。在 db 表中,它是这样保存的。

permission_id=> $permission_id
model_type=> "App\Models\Team"
model_id=> $team_id

非常棒!

于 2020-03-21T06:24:55.323 回答