2
我想看看後面AREL語句SQL:如何使用「包括」在Rails 3 AREL聲明?
Brand.where(:subdomain => "coke").includes(:products).to_sql
品牌的has_many產品,產品belongs_to的品牌。
然而,只有上述聲明產量:
"SELECT `brands`.* FROM `brands` WHERE `brands`.`subdomain` = 'coke'"
爲什麼我看不到在SQL中products
表中的信息?
呃,如果有在引用此表的查詢的條件也不會產生每桌一個單獨的查詢。相反,它將使用'LEFT OUTER JOIN'和一個查詢。 –
這就是我說的......「如果有對包含表的條件查詢,它將被集中到一個查詢[而不是運行多個查詢]」 –
AHHHH,在其他問題指着我真的把它帶回家我迪倫。如果它正在加入「包含」,它將爲主AR對象帶回冗餘數據。非常有意義,謝謝! – AKWF