Eloquent - 具有约束的Has()

时间:2017-03-08 11:02:46

标签: laravel eloquent

如何在eloquent上为 has()方法添加约束?

让我们说,它想要从John找到至少3条评论的所有帖子。我怎么能这样做?

预期代码的非工作示例:

$posts = Post::has('comments', '>=', 3)->where('author', 'John')->get();

我可以用另一种方式获得相同的结果(不使用 has())吗?

1 个答案:

答案 0 :(得分:0)

没有测试过,但可以工作:

Post::whereHas('comments', function($q){
    $q->whereAuthor('John')
      ->groupBy('post_id')
      ->havingRaw('count(`comments`.`post_id`) >= 3')
})->get();