我有一个疑问:
Posts::whereHas('comments', function($query){
$query->where('name', 'like', 'asd');
})->with('comments')->get();
Run Code Online (Sandbox Code Playgroud)
它返回所有评论名称类似于“asd”的帖子以及这些帖子的所有评论。我可以在 '::whereHas' 中将上述约束用于 'with' 方法,这样它就不会返回所有评论,而只会返回符合要求的评论吗?还是我必须重复查询?
您可以创建这样的查询,几乎没有重复:)
$callback = function($query) {
$query->where('name', 'like', 'asd');
}
Posts::whereHas('comments', $callback)->with(['comments' => $callback])->get();
Run Code Online (Sandbox Code Playgroud)
或者,您可以在这篇Laravel帖子中制作类似的内容 - 有没有办法将 whereHas 和 with
| 归档时间: |
|
| 查看次数: |
925 次 |
| 最近记录: |