比方说我有这样的关系:角色有许多用户。角色和用户存储一个code
值。
如果我要选择所有具有相同code
用户的角色,那么如何使用whereHas
子句进行查询?
我尝试过的事情:
$roles = Role::whereHas('users', function ($users) {
// Obviously doesn't work but it is what I need to access.
$code = $users->first()
->role
->code;
return $users->where('code', $code);
})->get();
答案 0 :(得分:0)
使用此:
$roles = Role::whereHas('users', function ($query) {
$query->whereColumn('users.code', 'roles.code');
})->get();