如何过滤预载有很多关联

问题描述 投票:0回答:1

我有一个Post模型,我想向当前用户显示所有帖子以及当前用户的评论。

这是我目前的代码。

Post.preload(:comments)

它将返回所有帖子及其评论。如何过滤注释以仅包含当前用户的注释?

ruby-on-rails rails-activerecord
1个回答
0
投票

为此,您可以创建范围:

scope :user_comments, -> (user) { includes(:comments).where(comments: { user: user }) }

然后

Post.user_comments(current_user)
© www.soinside.com 2019 - 2024. All rights reserved.