[英]Shopping cart in rails via book
通过这样的书:
使用Rails进行敏捷Web开发
我正在为我的应用程序创建购物车。 有这样的代码:
class Cart < ActiveRecord::Base
attr_accessible :id
has_many :line_items, dependent: :destroy
def add_article(article_id)
current_item = line_items.find_by_ART_ID(article_id)
if current_item
current_item.quantity += 1
else
current_item = line_items.build(ART_ID: article_id)
end
current_item
end
def total_price
line_items.to_a.sum { |item| item.total_price(item.ART_ID) }
end
def total_count
line_items.to_a.sum { |item| item.quantity }
end
end
在我上一个关于Rails 3.0.9的项目中,一切都还可以,但是现在说
nil不能强制进入db中的Fixnum,数量为null
如果我这样更改代码
current_item = line_items.find_by_ART_ID(article_id)
if current_item
current_item.quantity = 1
else
current_item = line_items.build(ART_ID: article_id)
current_item.quntity = 1
end
current_item
一切都很好,但是怎么了? 为什么Rails 3.2.6和ruby 1.9.3无法理解我的+ =分配?
+ =没问题,问题是您正在尝试使用代码来做到这一点。
nil + 1
数量首次为零。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.