Space Laravel 用户角色权限

Spatie Laravel user role permission

我是 Laravel 的新手。我已经实施了具有用户角色和权限的搜索。如果我选择了一个角色,它应该显示分配给该角色的所有用户...同样的权限方式,如果我搜索特定用户,它应该显示具有角色和权限的用户详细信息。

具有特定角色的用户

User::role('admin')->get()

具有特定权限的用户

User::permission('view')->get();

姓名为

的用户
User::with('roles.permissions')->with('permissions')->where('name' , 'testadmin')->first();

我想知道这是否正确?提前致谢!

使用wherehas方法

可以得到所有拥有roles/Permission的用户

获取所有具有管理员角色的用户

User::with('roles')
   ->whereHas('roles',function($query){
        return $query->whereIn('name',['Admin']);
   });

获取有查看权限的用户

User::with(['permission'])
    ->whereHas('permission',function($query){
        return $query->whereIn('name',['view']);
    });