У меня есть три модели, один суперкласс и два подкласса. Оба подкласса принадлежат другой модели (выражается через внешний ключ).
Я не совсем уверен, как будет выглядеть наилучшая установка в отношении моего FK? Положить ли внешний ключ в суперкласс, в подкласс или в оба? Может быть, есть также не только один способ, но несколько способов сделать это?
В каждом здании может быть много энергетических объектов, а это значит, что в нем может быть много объектов отопления и охлаждения. Каждый объект отопления / охлаждения / энергии принадлежит одному зданию. Таким образом, классические отношения «один ко многим» выражаются с помощью внешнего ключа.
Вот мои модели:
Суперкласс
class Energy(models.Model):
year : models.BigIntegerField(...)
value : models.IntegerField(...)
connected_building : ForeignKey ??????
Подклассы
class Heating(Energy):
connected_building : ForeignKey ?????
class Cooling(Energy):
connected_building : ForeignKey ?????
Связанный класс
class Building(models.Model):
name = models.Charfield(...)
Я боюсь испортить мою базу данных, поэтому любая помощь очень ценится. Заранее спасибо!