我有用户,角色和role_user表。
user.php的
public function roels()
{
return $this->belongsToMany('Role');
}
Role.php
public function users()
{
return $this->belongsToMany('User');
}
用户可以拥有多个角色,例如admin,sub-admin,member,如何按角色列出用户,如所有管理员或所有子管理员?
答案 0 :(得分:1)
有很多方法。试试这个:
$admins = User::whereHas('roles', function ($q) {
$q->where('roles.name', '=', 'admin'); // or whatever constraint you need here
})->get();
或:
$adminRole = Role::where('name', 'admin')->first();
$admins = $adminRole->users;