users
id
roles
id
name
user_roles
user_id
role_id
에있는 ID입니다. 예 : 역할 '관리자'그래서웅변 경우 많은에서 내가 특정 역할로 모든 사용자를 조회하고자하는 많은
users
id
roles
id
name
user_roles
user_id
role_id
에있는 ID입니다. 예 : 역할 '관리자'그래서웅변 경우 많은에서 내가 특정 역할로 모든 사용자를 조회하고자하는 많은
이있는 모든 사용자를 얻을, 당신이 사용할 수있는 웅변
에서$users = User::whereHas('roles', function($query) {
$query->where('name', 'admin');
})->get();
는 참조 용으로 여기를 참조하십시오 whereHas https://laravel.com/docs/5.5/eloquent-relationships
당신이 역할 ID를 알고있는 경우,이 작업을 수행 : 당신은 단지 이름 또는 역할의 제목을 알고 있다면
User::whereHas('roles', function ($q) use($roleId) {
$q->where('id', $roleId);
})
->get();
, 이렇게 :
User::whereHas('roles', function ($q) use($roleTitle) {
$q->where('title', $roleTitle);
})
->get();
다른 방향에서의 관계에 갈 수있는 옵션도 있습니다 :
Role::where('name', 'admin')->firstOrFail()->users;
또 다른 쿼리의 일환으로이 작업을 수행 할 수있는 방법이 있나요 : 예를 Comment :: where ('user'... 역할 관리자가있는 사용자입니까? – Chris
귀하의 질문을 이해할 수 있는지 확실하지 않습니다. – lagbox