我有一个迭代
current_item = line_items.create(product_id: product_id, instruction: instruction)
current_item.save
attribute_values.each do |attribute|
current_item.line_item_attributes.create(product_attribute_id: attribute)
end
它在创建属性时出错。当我打印出current_item
时,我得到了
#<LineItem id: nil, product_id: 1, cart_id: 36, created_at: nil, updated_at: nil, quantity: 1, instruction: "", order_id: nil>
根据我的理解意味着它尚未保存。我该如何解决这个问题?
调用create!
后,返回的错误是:
Validation failed: Order must exist
最近通过此迁移添加了订单模型:
class AddOrderToLineItem < ActiveRecord::Migration[5.0]
def change
add_reference :line_items, :order, index: true, foreign_key: true
end
end
和LineItem belongs_to :order
。这里的问题是我希望它是空白的,因为在这种情况下它还不属于订单。