我有一个如下所示的查询:
Post::whereHas('comments', function ($query) {
$query->where('content', 'like', 'foo%');
})->whereHas('comments', function ($query) {
$query->where('content', 'like', 'bar%');
})->get()
喜欢需要所有帖子,其中有一条评论带有像'foo'这样的文字,还有一条评论带有像'bar'这样的文字。我能以某种方式将这两个请求混合在一起吗?
答案 0 :(得分:0)
是的,可以将多个where子句链接起来,但是你只能使用::
一次(在模型名称之后),对于其他所有子句,它应该->
就像你一样添加了->get()
。
所以你最终会得到:
Post::whereHas('comments', function ($query) {
$query->where('content', 'like', 'foo%');
})->whereHas('comments', function ($query) {
$query->where('content', 'like', 'bar%');
})->get()