如何在Entrust for Laravel 5.0中检索特定权限的用户。
use App\Role;
use App\Permission;
$permission = Permission::find(1);
$roles = $permission->roles;
$users = $roles->users;
我知道代码不起作用......只是一个例子。
答案 0 :(得分:1)
尝试
$users = User::permission('edit articles')->get(); // Returns only users with the permission 'edit articles'
答案 1 :(得分:0)
感谢ntzm,我能够弄清楚如何找到有权访问权限的所有用户。不确定这是否会对任何人有所帮助。
有两种不同类型的员工可以访问权限。一个来自角色,另一个是授权给他们的方向。我还没有使用过直接的,但我确实拥有可以访问权限的角色。以下是我如何获得具有特定权限的用户:
$permission = Permission::findByName('edit posts');
$employees = [];
//Loop through each role.
foreach($permission->roles as $r){
$emps = $r->users;
//Cycle through the users.
foreach($emps as $e){
$employees[] = $e;
}
}
return $employees;
希望这有助于那些也需要这个的人。 :)