В интерфейсе администратора, после заполнения полей и нажатия кнопки «Сохранить», я получаю эту ошибку Может кто-нибудь сказать мне, в чем проблема? Из того, что я прочитал, эта проблема часто возникает из-за того, что эта строка кода не ставится super(Pizza, self).save(*args, **kwargs)
, но я все еще получаю эту ошибку и не могу понять, почему
К вашему сведению: я хочу, чтобы каждая пицца имела Топпинг сыра по умолчанию, и это для всей пиццы, и он не может быть в состоянии удалить его
class Topping(models.Model):
name = models.CharField(max_length=64)
def __str__(self):
return(f"{self.name}")
class Pizza(models.Model):
PIZZA_SIZES = (
('S', 'Small'),
('L', 'Large'),
)
pizza_type = models.CharField(max_length=64)
pizza_size = models.CharField(max_length=1, choices=PIZZA_SIZES)
qty_toppings = models.IntegerField(validators=[MinValueValidator(0), MaxValueValidator(3)], default=0)
toppings = models.ManyToManyField(Topping)
price = models.IntegerField(help_text="Price in $")
def __str__(self):
return f"Size: {self.get_pizza_size_display()}, Type: {self.pizza_type}, Number of Toppings: {self.qty_toppi\
ngs}, Price: {self.price}, Toppings: {self.toppings.in_bulk()}"
def save(self, *args, **kwargs):
# if 'toppings' not in kwargs:
# kwargs.setdefault('force_insert', True)
# kwargs.setdefault('force_update', True)
kwargs.setdefault('toppings', Topping.objects.get(name='Cheese'))
super(Pizza, self).save(*args, **kwargs)