У меня есть следующие модели:
class City(models.Model):
name = models.CharField(max_length=100)
class Pizza(models.Model):
name = models.CharField(max_length=100)
cities = models.ManyToManyField('City')
class Price(models.Model):
cad = models.DecimalField()
usd = models.DecimalField()
pizza = models.ForeignKey(Pizza)
Я могу создать новую пиццу со следующим кодом:
new_pizza = Pizza(name='Canadian')
new_pizza.save()
# I already calculated the following before, the syntax might not
# be correct but that's how you see it from the shell
new_pizza.cities = [<City: Toronto>, <City: Montreal>]
new_pizza.save()
new_price = Price(cad=Decimal('9.99'), usd=Decimal('8.99'), pizza=new_pizza.id)
new_price.save()
У меня может быть некоторая опечатка здесь и там, но вышеприведенное работает отлично, но я просто не люблю сохранять объекты так много раз. Есть ли лучший способ создать объект «Пицца» с нуля, используя текущие модели выше?