如何使用withCount而不使用laravel Eloquent

时间:2018-02-01 14:06:27

标签: laravel eloquent

我不知道我的问题的最佳标题是什么,但基本上我想选择一个用户的所有组,然后全部计算。

目前,我有

        $userGroups = UserView::findOrFail($userId)
                                ->groups()
                                ->get();

给了我用户的组。在计算之后我可以做一个foreach,但是想知道是否有直接的方法。我尝试以不同的方式添加withCount(),但没有设法让它工作。

我可以使用这样的东西,但它也为用户提供了我不需要的数据。我只需要用户的组。这就是为什么问题的标题就是这样的原因。

            $userGroups = UserView::with([
                'groups'
            ])
            ->withCount('groups AS groupCount')
            ->findOrFail($userId);

1 个答案:

答案 0 :(得分:2)

您也可以在集合上使用count,在运行查询后只需$userGroups->count()