Django NOT NULL constraint failed:
Я получаю 2 ошибки, пытаясь добавить товары в корзину на сайте на django.
IntegrityError at /apiadd/ Сбой ограничения NOT NULL: cianshop_basketitem.basket_id_id
В моей консоли я вижу следующее: " productindividual?id=1:136 POST http://127.0.0.1:8000/apiadd/ 500 (Внутренняя ошибка сервера) addToCart.onclick @ productindividual?id=1:136 VM55:1 Непойманная (в обещании) SyntaxError: Неожиданная лексема I в JSON в позиции 0 "
вот мой файл models.py:
from dataclasses import is_dataclass
from django.db import models
from django.contrib.auth.models import AbstractUser
class APIUser(AbstractUser):
pass
class Product(models.Model):
id = models.IntegerField(primary_key=True)
name = models.TextField()
description = models.TextField(null=True)
price = models.DecimalField(max_digits=6, decimal_places=2, default=0.0) #9999.99
image = models.FileField(upload_to='products', null=True)
class Basket(models.Model):
id = models.IntegerField(primary_key=True)
user_id = models.ForeignKey(APIUser, on_delete=models.CASCADE)
is_active = models.BooleanField(default=True)
class BasketItem(models.Model):
id = models.IntegerField(primary_key=True)
basket_id = models.ForeignKey(Basket, on_delete=models.CASCADE)
product_id = models.ForeignKey(Product, on_delete=models.CASCADE)
quantity = models.IntegerField(default=1)
def price(self):
return self.product_id.price * self.quantity
def product_name(self):
return self.product_id.name
class Order(models.Model):
id = models.IntegerField(primary_key=True)
basket_id = models.ForeignKey(Basket, on_delete=models.CASCADE)
user_id = models.ForeignKey(APIUser, on_delete=models.CASCADE)
datetime_ordered = models.DateTimeField(auto_now_add=True)
total_price = models.DecimalField(max_digits=6, decimal_places=2, default=0.0)
shipping_addr = models.TextField(default="")