我不知道我的问题的最佳标题是什么,但基本上我想选择一个用户的所有组,然后全部计算。
目前,我有
$userGroups = UserView::findOrFail($userId)
->groups()
->get();
给了我用户的组。在计算之后我可以做一个foreach,但是想知道是否有直接的方法。我尝试以不同的方式添加withCount(),但没有设法让它工作。
我可以使用这样的东西,但它也为用户提供了我不需要的数据。我只需要用户的组。这就是为什么问题的标题就是这样的原因。
$userGroups = UserView::with([
'groups'
])
->withCount('groups AS groupCount')
->findOrFail($userId);
答案 0 :(得分:2)
您也可以在集合上使用count
,在运行查询后只需$userGroups->count()
。