N + 1查询如何使用包含

时间:2013-11-20 17:03:47

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

如果我有一个n + 1查询问题,但没有一个模型有控制器,我只是使用该关联来获得我想要的。我能做些什么。

数据库架构:

Project belongs_to domain  Domain has_many projects

Domain has_many domain_datas  Domain_datas belongs_to domain

Domain_datas有一个名为index的列,因此为了获得index我在视图中执行此操作:

project.domain.domain_datas.index

1 个答案:

答案 0 :(得分:1)

以下内容应该为您提供所有完全预装的模型:

 Project.includes(domain: {domain_datas: :index})

另请参阅:http://guides.rubyonrails.org/active_record_querying.html

上的“13.1渴望加载多个关联”