【发布时间】:2018-07-11 21:22:08
【问题描述】:
我不知道我的问题的最佳标题是什么,但基本上我想选择一个用户的所有组然后全部计数。
目前,我有
$userGroups = UserView::findOrFail($userId)
->groups()
->get();
这给了我用户组。我可以在计算它之后做一个 foreach ,但想知道是否有直接的方法。我尝试以不同的方式添加 withCount(),但没有成功。
我可以让它与这样的东西一起工作,但它也提供了我不需要的用户数据。我只需要用户的组。这就是问题的标题是这样的原因。
$userGroups = UserView::with([
'groups'
])
->withCount('groups AS groupCount')
->findOrFail($userId);
【问题讨论】:
-
count 方法正是您要找的,您试过了吗?
withCount方法用于计算您尚未检索到的关系。UserView:findOrFail($userId)->groups()->count();将计算您的查询结果。 -
这只是给我的数字。我想要所有组,然后计数。