我正在 Rails 中创建一个简单的购物车,当我将产品添加到购物车时出现此错误:当您没有预料到它时,您有一个 nil 对象!
添加到购物车的方法是:
def add_to_cart
begin
product = Product.find(params[:id])
rescue ActiveRecord::RecordNotFound
logger.error("Attemp to access invalid product #{params[:id]}")
flash[:notice] = "Invalid Product !"
redirect_to :action => :index
else
@cart = find_cart
@cart.add_product(product)
end
end
和购物车中的 add_product :
def add_product(product)
current_item = @items.find {|item| item.product == product}
if current_item
current_item.increment_quantity
else
@items << CartItem.new(product)
end
end
购物车工作正常,当我将救援方法添加到 add_to_cart 时,发生了这种情况......