2
我有三個型號:檢索結果
- 用戶
- 文件
- 下載
User
的has_many Files
,File
belongs_to的User
File
的has_many Downloads
,Download
belongs_to的User
有什麼辦法來檢索全部User
的Downloads
,沒有通過所有Files
迭代,然後檢索與每個文件相關聯的Downloads
? (這將產生大量的查詢)
編輯
我發現加載User
的方式,它是Files
和Downloads
在短短3查詢
user = User.includes(:uploads => [:downloads]).find(1)
但是,如果我已經有一個User
對象?
如果我只是想加載用戶下載而不加載他們的上傳呢? (使用連接)
編輯
Download.joins(:upload => :user).where(:users => { :id => user.id })
是否有這樣做具有參考用戶表的主鍵,直接的一種方式?
太好了,謝謝。 – 2012-08-10 00:12:54