У меня есть модель продукта, в которую входит пользователь (пользователь, который добавляет продукт)
class PreOrder(models.Model):
user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
contact = models.CharField(max_length=15)
product = models.CharField(max_length=50)
quantity = models.IntegerField()
unit_of_measurement = models.CharField(max_length=20, blank=True, null=True)
expected_time = models.DateField()
def __str__(self):
return self.product
и модель cartItem, которая ссылается на модель продукта (поле продукта) и владельца продукта (поле product_owner) ). Поле product_owner должно хранить информацию о владельце продукта, чтобы при каждом размещении заказа я узнавал владельца, чьи продукты покупаются.
class CartItem(models.Model):
cart = models.ForeignKey('Cart',null=True, blank =True,on_delete=models.CASCADE)
product = models.ForeignKey(Product,related_name="product", on_delete=models.CASCADE)
quantity=models.IntegerField(default=1)
product_owner=models.ForeignKey(User, related_name="owner", on_delete=models.CASCADE,blank=True,null=True)
line_total=models.DecimalField(max_digits=10, decimal_places=2, default=0.00)
def __str__(self):
try:
return str(self.cart.id)
except:
return self.product.title
в view.py Я попытался добавить владельца продукта, как в случае ниже
if request.method == "POST":
qty = request.POST['qty']
product= Product.objects.get(slug=slug)
cart_item, created = CartItem.objects.get_or_create(cart=cart, product=product)
cart_item.quantity = qty
cart_item.product_owner = product.user
cart_item.save()
, когда я отправляю локально, владелец добавляется в cartItem, но при сервер выдает ошибку: django .db.utils.ProgrammingError: столбец cart_cartitem.product_owner_id не существует LINE 1: ... rtitem "." product_id "," cart_cartitem "." amount "," cart_cart .. .
Каков наилучший способ добавить владельца продукта в корзину? Спасибо.