2013-07-30 78 views
1

我的問題,詳情請看這裏遍歷實例變量打印不需要的東西

undefined method `items' for nil:NilClass in @cart.items.each

多餘的東西,我添加了應用程序控制器方法也使得是helper_method到使其在整個應用程序的所有視圖中都可用

helper_method :cart 

def cart 
    @cart = Cart.find(session[:cart_id]) 
    end 

當我認爲我遍歷這樣

<%= cart.items.each do |item| %> 
    <tr> 
     <td><%= item.product.title%></td> 
     <td><%= item.product.price%></td> 
    </tr> 
    <% end %> 

的@cart變量,它顯示了這個

enter image description here

爲什麼打印的是上的事情嗎?我知道這是item.product.title和所有這些變量的輸出。如何刪除?

回答

1

爲什麼要印刷那麼重要?

因爲你在告訴它。當你用<%= %>包圍ruby代碼時,你告訴它要呈現所附代碼的結果。由於您將它放在each區塊周圍,因此它將顯示each的結果,即它被調用的集合。

要刪除它,只需使用<% %>

+0

這是一個可怕的愚蠢的錯字。感謝你及時的答覆。 – mrudult