Laravel - 如何计算嵌套的预先加载的关系查询?

时间:2018-02-12 16:13:24

标签: laravel eloquent

关系:
类别有很多类别板 CategoryBoards有很多线程
CategoryBoards有很多threadPosts THROUGH线程

我想要这样的东西,但它不起作用。

$returnData['categories'] = CategoryView::with('categoryBoards')
   ->withCount([
   'categoryBoards.threads AS threadCount',
   'categoryBoards.threadPosts AS threadPostCount'
   ])->get();

这个有效所以我认为我的关系现在好了,但我只需要COUNT个帖子和帖子,而不是对象。

$returnData['categories'] = CategoryView::with(['categoryBoards.threads', 'categoryBoards.threadPosts'])->get();

1 个答案:

答案 0 :(得分:0)

我想你应该试试

CategoryView::with(['categoryBoards' => function($q){
$q->count('*');
}])->get()

如果给阵列带密钥,你可以做任何事情 - >关系名称和值回调。