在 Laravel 中使用 Spatie 权限显示分配给用户的多个角色

时间:2021-04-19 23:57:06

标签: php laravel permissions spatie

有谁知道如何显示一个用户下的多个角色?我已经设置了我的权限,因此用户可以拥有多个角色,使用以下内容可以轻松设置

$user->assignRole(['Root', 'IT', 'HR']); // assigning roles

但是,我无法以相同的方式显示用户所属的所有角色? 有没有人做过这个并且知道怎么做?我只想在页面上显示用户属于哪个角色。

3 个答案:

答案 0 :(得分:3)

如果有两个表(roles 和 user_roles),那么您可以通过传递 user_id(user_id 以获取特定用户分配的角色)。

答案 1 :(得分:3)

参考此链接

https://spatie.be/docs/laravel-permission/v4/basic-usage/basic-usage

获取用户角色的名称

$roles = $user->getRoleNames(); 

返回一个集合

答案 2 :(得分:1)

您可以通过 let blacklisted = ["blacklisted", "right"] let foundInText = blacklisted.some(blacklistWord => message.content.toLowerCase().includes(blacklistWord)) if (foundInText) { // No need for === true on boolean variables message.delete(); message.channel.send('no just no'); }

获取分配给用户的角色集合