Как добиться того, чтобы удаление или обновление модели не влияло на ранее созданный объект

У меня есть три модели Product, Order и OrderItem

После того, как кто-то размещает заказ, я не хочу, чтобы объект продукта, связанный с моделью 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)
    

не делайте его ForeignKey в OrderItem для цены используйте целочисленное поле и предоставьте значение для него в вашем представлении.

Вернуться на верх