2013-08-04 76 views
-3

誰能告訴我,究竟這種行爲產生:在搜索中包括模型

users = User.includes(:profile => [:city, :state]) 

特別拿什麼:城市:狀態又是什麼呢沒有這些額外的參數不同。

+0

http://apidock.com/rails/ActiveRecord/QueryMethods/includes – Clive

+0

它不告訴我這是什麼價值觀做 – nowy2781

+0

確定,所以這將包括型材,其中城市和國家==我的價值觀,是嗎?它的東西像排除 - 在包含配置文件表之前檢查正確的城市和州的價值? – nowy2781

回答

0

例如你希望你的每一個用戶的城市和州顯示在視圖中,然後沒有includes方法兩個數據庫查詢將觸發爲每個用戶提取他的statecity它在您的應用程序中引入n+1查詢問題。要解決這個問題,您可以使用includes方法急切地加載statecity

0

這種預緩存「城市」,並從鏈接表的個人資料'狀態'字段,以便將不會有額外的查詢,當你調用如「user.profile.city」