Как создать идентифицирующие и неидентифицирующие отношения в Django

Пожалуйста, кто-нибудь может научить меня, как создать идентифицирующие и неидентифицирующие отношения в Django, похожее изображение для справки. Спасибо.

Изображение для справки.

https://i.stack.imgur.com/ai8HP.jpg

Я полагаю, что ForeignKey - это то, что вы ищете как "идентифицирующую связь". Тогда

# models.py
from django.db import models

class District(models.Model):
    # django will automatically create id field
    # nombre = models.SOMEFIELD()
    pass

class Headquarter(models.Model):
    district = models.ForeignKey(District, on_delete=models.CASCADE)
    # nombre = models.SOMEFIELD()
    # activo = models.SOMEFIELD()

class Building(models.Model):
    # This "district" field looks pointless, as we can simply 
    # follow relation like a_building.headquarter.district
    district = models.ForeignKey(District, on_delete=models.CASCADE)
    headquarter = models.ForeignKey(Headquarter, on_delete=models.CASCADE)
    # nombre = models.SOMEFIELD()

Я полагаю, что схема достаточно очевидна для вас, и оставляю Department на ваше усмотрение.

Я понятия не имею, что вы имеете в виду под "неидентифицирующими отношениями". Возможно, вы захотите предоставить детали реализации, чтобы я мог оказать большую помощь.

PS: Django хорошо документирован. Вы можете найти там большинство возможностей Django.

PS 2: Пожалуйста, следуйте @Frankline и перепишите свой вопрос. Добро пожаловать на Stack Overflow.

Вернуться на верх