Django raise ValueError( ValueError: Невозможно присвоить значение "1": "Order.variation" должен быть экземпляром "ProductVariation".
Я пытаюсь создать объект Orderobject, но получаю эту ошибку, и не знаю, как исправить
variation_obj = ProductVariation.objects.get(id=int(variation_id_list[index]))
quantity = variation_quantity_list[index]
total = variation_total_list[index]
total = float(total)
order_object = Order(user=request.user, variation=variation_obj.id, quantity=quantity, total=total)
error:
Django raise ValueError( ValueError: Cannot assign "1": "Order.variation" must be a "ProductVariation" instance.
models.py
class Order(models.Model):
variation = models.ForeignKey(ProductVariation,
on_delete=models.DO_NOTHING)
created_at = models.DateField(auto_now_add=True)
uploaded_at = models.DateField(auto_now=True)
quantity = models.IntegerField()
total = models.FloatField()
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
Для variation
используется объект variation_obj
, так:
order_object = Order(
user=request.user, variation=variation_obj, quantity=quantity, total=total
)
order_object = Order(
user=request.user,
variation=variation_obj,
quantity=quantity,
total=total
).save()
Передайте объект foreinkey вместо его id