我在Cart
模型的方法:如何获取未保存在数据库中的对象的ID?
def add_product_with_variant(product_id, variant_id)
current_item = line_items.find_by(product_id: product_id)
if current_item
current_item.amount += 1
line_item_variant = LineItemVariant.new(variant_id: variant_id, line_item_id: current_item.id)
line_item_variant.save
else
current_item = line_items.build(product_id: product_id)
line_item_variant = LineItemVariant.new(variant_id: variant_id, line_item_id: current_item.id)
line_item_variant.save!
end
end
在else
发言中,我使用LineItemvariant.new(variant_id: variant_id, line_item_id: current_item.id)
到variant
分配给line_item
。但在这种情况下,我不能保存LineItemVariant
,因为line_item
尚不存在,我不能使用这部分代码:line_item_id: current_item.id
。有没有解决方案来获得ID,或者有更简单的方法来解决这个问题?谢谢你。
创建'current_it em'而不是'build',然后使用它的'id'。 – Pavan