创建活动记录关联Rails4

时间:2016-04-08 22:37:28

标签: ruby ruby-on-rails-4 activerecord

我有与评论相关的帖子。我想从前10个帖子中创建一系列评论。我有以下方法,但to_a似乎不再工作了?这也会给出N + 1查询吗?我应该includes(:comments)预加载吗?

def 10_posts_comments
  posts = Post.limit(10)

  posts.flat_map do |post|
    post.comments.to_a
  end

end

我还是新手,所以任何帮助都会受到赞赏。

1 个答案:

答案 0 :(得分:0)

你可以尝试:

def latest_comments
  Post.includes(:comments).last(10).map(&:comments).flatten
end