如何实现删除或更新不影响先前创建对象的模型



我有三个模型Product、Order和OrderItem

一旦有人下了订单,如果我要删除或更新产品模型,我不希望收据上与订单项模型关联的产品对象发生更改或被删除。如何做到这一点?

#model
class Product(models.Model):
price = models.DecimalField()
class Order(models.Model):
buyer = models.ForeignKey(Buyer, on_delete=models.SET_NULL)
class OrderItem(models.Model):
product = models.ForeignKey(Product, on_delete=models.SET_NULL)
order = models.ForeignKey(Order, on_delete=models.SET_NULL)

#view
@login_required
def receipt(request):
orderitems = OrderItem.objects.filter(order__buyer__user=request.user)

不要在OrderItem中将其作为价格的ForeignKey。请使用整数字段并在视图中提供其值。

最新更新