gpt4 book ai didi

Laravel 多对多关系获得由两个用户模型共享的角色

转载 作者:行者123 更新时间:2023-12-02 02:48:37 24 4
gpt4 key购买 nike

问题很简单,如果我在用户和角色之间有多对多关系,并且两个用户之间有一个共享角色,是否有一种 Eloquent 方法来获得该共享角色,或者我是否必须调用他们的每个角色并使用两个 foreach 循环来匹配他们的记录。

最佳答案

我认为以下查询应该可以解决问题:

$userId1 = 123; // just some assumption...
$userId2 = 234; // can of course be a user object as well

$roles = Role::query()
->whereHas('users', function ($query) use ($userId1) {
$query->where('users.id', $userId1);
})
->whereHas('users', function ($query) use ($userId2) {
$query->where('users.id', $userId2);
})
->get();

换句话说,该查询基本上意味着:给我所有与 ID 为 $userId1 的用户相关联的角色 以及 id 为 $userId2.

关于Laravel 多对多关系获得由两个用户模型共享的角色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53143218/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com