【发布时间】:2023-03-12 03:07:01
【问题描述】:
我有很多 Laravel 关系很多用户有很多角色
我知道我可以执行 User::find(1)->roles()->get() 来为用户获取 ID 为 1 的所有角色,但这需要我知道角色的 ID 为反对只是它的名字
我可以在我的用户存储库中放入什么样的雄辩的查询来做类似的事情
public function getAllUsersWithRole($roleType){
//Query goes here
}
其中 $roleType 是角色的名称。所以我需要根据 hte 名称查找角色的 ID,然后在数据透视表中返回具有该角色 ID 的用户
【问题讨论】:
-
你肯定把事情复杂化了。您拥有该角色,然后只需执行
$role->users;即可获取具有该角色的所有用户。 -
我没有这个角色。我只有角色的名称,我想计算有多少用户拥有这些角色。
-
然后为计数创建一个伪关系,以便您可以急切地加载它 - 就像这里的
tags:stackoverflow.com/questions/25662854/…
标签: laravel many-to-many eloquent repository-pattern