轻松检索rails中双嵌套模型的所有实例

时间:2016-03-01 09:16:47

标签: ruby-on-rails associations querying

我有Account has_many HotelsHotel has_many Rooms

因此,我可以撰写account.hotels以获取特定帐户的所有酒店,并hotel.rooms获取特定酒店的所有客房。

如果我想获得特定帐户的所有房间怎么办?是否有一种优雅的方式来使用rails而不必遍历帐户的每个酒店并以数组形式存储? 像account.hotels.rooms

这样的东西

1 个答案:

答案 0 :(得分:1)

请参阅guides.rubyonrails.org

上的has_many :through
class Account < ActiveRecord::Base
  ...
  has_many :hotels
  has_many :rooms, through: :hotels
end

然后

account.rooms