Я пытаюсь создать таблицу, которая динамически распространяется с объектами django, где каждая строка является объектом модели django.Если свойство объекта является внешним ключом, цель состоит в том, чтобы отобразить раскрывающийся список всех возможных параметров FK.Для этого мне нужно определить, является ли поле объекта FK, а затем извлечь все объекты FK.
Для этого есть два компонента:
- Я борюсьчтобы определить, является ли свойство объекта отношением FK
- Я пытаюсь получить все объекты той же модели, что и FK
Идея в псевдокоде:
for field in object.fields:
if field is FK:
return field.objects.all()
else:
return field
Я знаю, что могу проверить отношение ForwardManyToOneDescriptor (ниже), но существует ли более компактный общий способ проверки отношения FK?
isintance(Foo.bar, db.models.fields.related_descriptors.ForwardManyToOneDescriptor):
Есть ли способ получить все объекты модели FK, либо классом модели, либо экземпляром класса?Foo.bar.all()
или Foo.objects.first().bar.all()