我在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