我使用laravel spatie包来获取用户权限。我需要列出不属于特定用户的所有用户。例如,列出所有非管理员(角色)用户。
列出我用过的所有管理员用户
$users = App\User::role('admin');
我需要与
相反答案 0 :(得分:2)
您可以进行2个查询以获取所需的两组用户。我的意思是:
1)没有任何角色的用户。
cdk --app path/to/cdk.out deploy ExampleStack --parameters "ExampleStack:SomeVar=SomeValue"
2)用户具有任何角色,但没有管理员角色(来自Adam Kozlowski回答)
User::whereDoesntHave('roles')->count()
答案 1 :(得分:1)
尝试这种方式:
public class Device
{
public long Id { get; set; }
public string Uid { get; set; }
public Type Type { get; set; }
public Status Status { get; set; }
public virtual List<Ping> Pings { get; set; } //Newly added
}
答案 2 :(得分:0)
正如documentation所述,您可以使用:
$users = User::role('writer')->get(); // Returns only users with the role 'writer'
角色作用域可以接受字符串,\ Spatie \ Permission \ Models \ Role对象或\ Illuminate \ Support \ Collection对象。
只需将要查询的角色放入集合中即可。