2013-10-29 24 views
0

即時通訊有問題顯示每個類別的名稱與下面的代碼, 任何人都可以建議嗎?Ruby on rails如果聲明關係錯誤

<% if @products.category.name == "categoryname" %> 

<% @products.each do | product | %> 
<%= product.name %> 
<% end %> 

<% end %> 

我得到以下錯誤: 未定義的方法`類別」爲#

回答

5

看來你呼籲@ products.all if語句

@products沒有.category我會承擔起你的判斷錯誤。

你需要更改代碼以這個爲它工作...

<% @products.each do | product | %> 
    <% if @products.category.name == "Name Here" %> 
     <%= product.name %> 
    <% end %> 
<% end %> 
1

我假設@products是一個數組或AR ::關係。您可能需要/需要循環該變量。看起來你試圖訪問一個特定的實例,而不是整個數組。

也許,@products.first.category.name或類似的東西