请帮帮我。我不能过滤单个记录。可能是也可能不是。
// In Controller
public function show(Post $post)
{
$post = Post::with(['comments' => function($query) {
$query->where('status', 'active');
}
])->find($post);
// can't filter comments
return view('post.show', ['post' => $post]);
}
按活动对评论排序
2条答案
按热度按时间pcww981p1#
阅读文档https://laravel.com/docs/10.x/eloquent-relationships!
首先,你有一个**
Post
类型过滤为$post
**。只需要动态地添加其他的东西,最后获取结果。你不需要再找到它!如果控制器中的函数只接受ID作为参数,那么只需将代码更改为:
ma8fv8wu2#
使用whereHas(),