laravel-access-model属性在wherehas闭包中动态显示

ezykj2lf  于 2021-06-19  发布在  Mysql
关注(0)|答案(1)|浏览(262)

假设我有这样的关系:角色有很多用户。角色和用户存储 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();
6jjcrrmo

6jjcrrmo1#

使用此选项:

$roles = Role::whereHas('users', function ($query) {
    $query->whereColumn('users.code', 'roles.code');
})->get();

相关问题