ActiveRecord包括关联反向引用

时间:2015-12-27 23:21:07

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

我正在创建一个如下所示的ActiveRecord查询:

Post.includes(:comments).where("created_at > ?", Time.zone.now)

在我的观看中,我正在循环每个帖子的评论,我正在执行此comment.post,每个帖子的每个帖子都会创建N + 1,1。

所以我可以这样做来减少查询:

Post.includes(comments: :post).where("created_at > ?", Time.zone.now)

但是,这样做,我还有1个查询比我想要的还要多。 它首先进行查询以获取所有帖子,然后查询以获取所有评论,然后进行第3次查询以获取所有评论的所有帖子。

因为我已经在第一个查询中加载了帖子,所以我可以告诉ActiveRecord每个评论的帖子已经加载了,它应该连接后引用而不进行第3次查询?

0 个答案:

没有答案