【发布时间】:2010-12-06 22:01:17
【问题描述】:
当他在模型中展示这种方法时,我正在阅读使用 Rails 4Th 编辑的敏捷 Web 开发一书:
def add_line_items_from_cart(cart)
cart.line_items.each do |item|
item.cart_id = nil
line_items << item
end
end
这是解释:
*对于我们从购物车转移到订单的每件商品,我们需要做两件事。首先,我们将 cart_id 设置为 nil,以防止我们销毁购物车时物品会变得糟糕。然后我们将商品本身添加到订单的 line_items 集合中。请注意,我们不必对各种外键字段做任何特殊处理,例如将订单项行中的 order_id 列设置为引用新创建的订单行。 Rails 使用我们添加到 Order 和 LineItem 模型中的 has_many 和 belongs_to 声明来为我们编织。将每个新的行项目附加到 line_items 集合中,将密钥管理的责任交给 Rails。*
谁能解释一下这行简单的代码 line_items
感谢您的关注 西蒙娜
【问题讨论】:
标签: ruby ruby-on-rails-3