Желаю приятного дня всем. Как я уже упоминал в заголовке, я хотел бы присоединиться к нескольким моделям и идентифицировать один из них с одним глобальным идентификатором, поэтому идентификатор определит, какая именно модель, и я бы получил доступ ко всем своим полям.Несколько моделей - Один общий первичный ключ (Django)
В настоящее время я сражаюсь с наследованием с несколькими столами, и у меня есть проблема. Я хотел бы иметь одну родительскую модель и несколько дочерних моделей, которые наследуют некоторые поля родителя.
class Parent(models.Model):
pass
class Child1(Parent):
fieldX = models.CharField()
class Child2(Parent):
fieldY = models.CharField()
Однако я хотел бы получить доступ к родительской модели childs с использованием первичного ключа. Так что ...
Parent.objects.all()
должен возвращать child1 и Child2 объекты с их полями (fieldX, Fieldy), а также.
(Пусть считать, что родительская запись с рк = 1 является Child1 модель)
Хотя, когда я пытаюсь получить доступ к ребенку поля по родительской модели
child = Parent.objects.get(pk=1)
child.fieldX
Джанго возвращает AttributeError: «Родитель 'объект не имеет атрибута' fieldX '
Моя цель - создать что-то вроде одного первичного ключа для всех дочерних моделей. Это возможно в Django? Соответственно, есть ли подобное решение или предложение? Я искал в смежных вопросах, таких как contenttype или GUID, UUID, но я полагаю, что это не то, что я ищу. Спасибо за помощь!