#model file
class Product < ActiveRecord::Base
belongs_to:product_type
end
#view
<%=debug(@products.product_type)%>
#controller case1
@products=Product.joins(:product_type).all
#controller case2
@products=Product.all
我想請問 case1 與 case2 差異在哪? 我在測試的時候即使沒有使用.joins(:product_type),在 view 裡一樣可以成功取得 product_type
問題已解決 使用 joins 產生的 sql log Product Load (0.1ms) SELECT "products".* FROM "products" INNER JOIN "product_types" ON "product_types"."id" = "products"."product_type_id" ProductType Load (0.2ms) SELECT "product_types".* FROM "product_types" WHERE "product_types"."id" = 2 ORDER BY ord asc LIMIT 1
沒有使用 joins 產生的 sql log Product Load (0.1ms) SELECT "products".* FROM "products" ProductType Load (0.1ms) SELECT "product_types".* FROM "product_types" WHERE "product_types"."id" = 2 ORDER BY ord asc LIMIT 1