2016-03-03 39 views
0

我有以下的關聯:如何確保該協會存在,並加載它,以避免N + 1軌

A User has_many House 
A House belongs_to User 

我知道,如果我想找到的所有獨特的用戶具有至少一個如果一旦我找到這些用戶,我要作用於他們的房子

User.joins(:houses).uniq 

現在,我將如何着手:房子,我會做到這一點。我怎麼會載入內存的房子,這樣我就可以作用於它們,如:

User.joins(:houses).uniq.each do |user| 
    user.houses.each { |h| do_something_with_house(h) } 
end 

回答