2013-06-14 4 views
2

Я видел, что вы можете получить все имена полей из объекта Джанго модели по телефонуПолучение имена свойств объекта Джанго один-ко-многим набор

model_instance._meta.fields 

Но это не включает в себя один для многих аксессуаров. Например, если у меня есть модель «Дом» и модель «Комната», а в комнате есть поле «Зарубежный ключ» для Дома, в доме теперь есть свойство room_set. Как я могу получить список этих имен свойств для экземпляра модели?

Благодаря

ответ

2

Не уверен, что это лучший подход, но это работает:

from django.db.models.fields.related import ForeignRelatedObjectsDescriptor 
print [prop for prop in dir(House) if isinstance(getattr(House, prop), ForeignRelatedObjectsDescriptor)] 

напечатает:

['room_set'] 
Смежные вопросы