0
我試圖計算總價包含在購物車中的所有物品未定義的方法。但是我得到一個undefined method total_cart_price for ActiveRecord::Relation:xxx
Rails的ActiveRecord的::關係誤差計算車項目
購物車模型(shop_cart.rb)
has_many :shop_cart_items, :dependent => :destroy
def total_cart_price
shop_cart_items.to_a.sum { |item| item.total_price }
end
購物車項目模型(shop_cart_item.rb)
attr_accessible :quantity, :shop_cart_id, :shop_product_id
belongs_to :shop_product
belongs_to :shop_cart
def total_price
shop_product.sell * quantity
end
籃查看(店/ basket.html.erb)
<tbody>
<% @cart_items.each do |item| %>
<tr>
<td><%= item.shop_product.name %></td>
<td><%= number_to_currency(item.shop_product.sell) %></td>
<td><%= item.quantity %></td>
<td><%= number_to_currency(item.total_price) %></td>
</tr>
<% end %>
<tr>
<td></td>
<td></td>
<td>Subtotal:</td>
<td><%= number_to_currency(@cart_items.total_cart_price) %></td>
</tr>
</tbody>
單件商品的總價格工作正常;該錯誤正試圖計算所有項目的總和。
我沒有shop_cart控制器或意見,我打電話從店#籃鑑於方法 - 不知道這是什麼原因造成的問題?
任何幫助非常感謝。
嗨,這給我一個未定義的方法'shop_cart'的ActiveRecord ::關係 – Neal
哦,你有'@ shop_cart'變量控制器可以使用這個或'@ cart_items.first.shop_cart.total_cart_price' – Amar
非常好,謝謝。使用@ cart_items.first,我雖然只會得到購物車中第一件商品的總和,但它已經奏效。 – Neal