渴望加载深层嵌套关联

use*_*700 11 activerecord model ruby-on-rails-4

我有嵌套关联的模型.我想从一个查询加载所有嵌套记录.

hotel has_many rooms

rooms has_many room_variants

room_variant has_many seasonal_rates

我搜索酒店名称的酒店,并想加载嵌套的模型数据.

对于一个级别的嵌套,我们可以做到Hotel.search('test').includes(:rooms).我没有找到加载深层嵌套关联模型条目的方法.

csc*_*oed 31

你可以做:

Hotel.search('test').includes(rooms: { room_variants: :seasonal_rates })
Run Code Online (Sandbox Code Playgroud)

请参阅RailsGuides中的Eager Loading Associations的"嵌套关联哈希"部分.