#python #django
#python #django
Вопрос:
Я пытаюсь понять многостоловое наследование в django и использую примеры кода из официальных документов django:
class Place(models.Model):
name = models.CharField(max_length=50)
address = models.CharField(max_length=80)
class Restaurant(Place):
serves_hot_dogs = models.BooleanField(default=False)
serves_pizza = models.BooleanField(default=False)
При выполнении следующего в консоли python. кажется, что django создает объект Place неявно при создании объекта Restaurant:
>>> Place.objects.all().count()
0
>>> Restaurant.objects.all().count()
0
>>> Restaurant.objects.create(serves_pizza=True)
<Restaurant: Restaurant object (1)>
>>> Place.objects.all().count()
1
>>> Restaurant.objects.all().count()
1
>>> Restaurant.objects.first() is Place.objects.first()
False
Может кто-нибудь, пожалуйста, объяснить, что происходит?
Комментарии:
1. Потому что это буквально то, что такое наследование нескольких таблиц.
2. Тогда спасибо Дэниелу Розману. у меня были другие мысли о многостоловом наследовании.