Почему Django неявно создает объект типа parent в многостоловом наследовании? - PullRequest
0 голосов
/ 21 апреля 2019

Я пытаюсь понять наследование нескольких таблиц в django и использую примеры кода из официальных django docs :

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

Может кто-нибудь объяснить, что происходит?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...