2016-02-22 27 views
2

我有這個疑問:Rails 4 - 未使用的熱切加載。爲什麼?

@cars = Car.select('COUNT(id) AS grouped_cars') 
          .includes(:services, :industries) 
          .within(distance, origin: params[:search_dealer]) 
          .where('...') 
          .group('cars.brand') 

然後,在視圖中:

<% @cars.each do |car| %> 
    ... 
    <% car.services.each do |service| %> 
    <%= service.name %> 
    <% end %> 
    ... 
<% end %> 

Bulet寶石提醒未使用預先加載 - 刪除包括(:服務行業)

我究竟做錯了什麼?

編輯: 這裏就是使用industries代碼:

<% industries = car.industries.map(&:name_slug).join(',') %> 
+1

我不明白怎麼說'select'實際上可以用來做任何東西,除了它返回計數小號? – phoet

+0

抓取表中的所有字段,「select」與「includes」不兼容 - 表示選擇部分只抓取一些額外字段(計數)。 – user984621

+0

我想,你應該在查詢中使用select。我相信,查詢中不會使用'includes' – Anwar

回答

1

的原因是因爲您沒有使用「產業」與塊,所以你已經對行業表不必要的查詢這是不是在你的模板中使用

<% @cars.each do |car| %> 
<% car.services.each do |service| %> 
<%= service.name %> 
<% end %> 
相關問題