如何在eloquent上为 has()方法添加约束?
让我们说,它想要从John找到至少3条评论的所有帖子。我怎么能这样做?
预期代码的非工作示例:
$posts = Post::has('comments', '>=', 3)->where('author', 'John')->get();
我可以用另一种方式获得相同的结果(不使用 has())吗?
答案 0 :(得分:0)
没有测试过,但可以工作:
Post::whereHas('comments', function($q){
$q->whereAuthor('John')
->groupBy('post_id')
->havingRaw('count(`comments`.`post_id`) >= 3')
})->get();