2

我已经看到您可以通过调用从 django 模型对象中获取所有字段名称

model_instance._meta.fields

但这不包括一对多访问器。例如,如果我有一个 House 模型和一个 Room 模型,并且一个 Room 有一个 House 的外键字段,那么 House 上有一个现在称为 room_set 的属性。如何获取模型实例的这些属性名称的列表?

谢谢

4

1 回答 1

2

不确定这是最好的方法,但它有效:

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

将打印:

['room_set']
于 2013-06-14T21:25:21.133 回答