[英]Rails: ActiveRecord::RecordNotFound in Cart
我對所有項目都使用friendly_id。 我在cart.rb模型中Couldn't find Product with 'id'=the-pen
一個錯誤,說.. Couldn't find Product with 'id'=the-pen
我不確定該怎么辦。 任何幫助,將不勝感激
cart.rb
class CartItem < ActiveRecord::Base
attr_reader :product_id, :quantity
def initialize product_id, quantity = 1
@product_id = product_id
@quantity = quantity
end
def increment
@quantity = @quantity + 1
end
def product
Product.find product_id
end
def total_price
product.price * quantity
end
end
ApplicationController.rb
def initialize_cart
@cart = Cart.build_from_hash session
end
OrderForm.rb
def build_order_items
@cart.items.each do |item|
@order.order_items.create! product_id: item.product_id, quantity: item.quantity
end
CartItem的product
方法仍.find
使用.find
方法,當您輸入字符串作為參數而不是數字ID時,該方法可能會.find
錯誤。 嘗試將其修改為使用.friendly.find
。
希望這可以幫助!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.