Добавить атрибут модели к той же модели в Django - PullRequest
0 голосов
/ 30 апреля 2020

У меня есть модель под названием Company. Компания может быть ребенком большой компании. Таким образом, в модели Company должен быть атрибут «родитель», который также является Company.

Я получил это:

class Company(models.Model):
    name = models.CharField(max_length=250)
    parent = models.ForeignKey(
        Company,
        on_delete=models.SET_NULL,
        related_name="notification",
        null=True,
        blank=False,
    )

Но django всегда говорит, что мне нужно создать компанию учебный класс. Это правильный способ сделать это?

1 Ответ

1 голос
/ 30 апреля 2020

Используйте ключевое слово "self" для ссылки на ту же модель.

class Company(models.Model):
    name = models.CharField(max_length=250)
    parent = models.ForeignKey(
        'self',
        on_delete=models.SET_NULL,
        related_name="notification",
        null=True,
        blank=False,
    )
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...