我想获取作为模型实例的外键字段的表的名称。例如,我知道我可以通过使用instance._meta.concrete_fields
或通过获取instance._meta.get_fields
中的字段名称来获取有关字段的数据,但是我对获取外键字段表名称一无所知。我想知道您是否能帮助我。
您可以通过_meta
属性查询相关模型的Options
(db_table
)API:
<related_field>.related_model._meta.db_table
例如:
for field in instance._meta.concrete_fields:
if isinstance(field, models.ForeignKey):
print(field.related_model._meta.db_table)
如上所述,您可以通过<model>._meta.get_fields()
访问字段。如果要过滤它们以仅包括ForignKey字段,则可以使用简单的过滤:
for item in Document._meta.get_fields():
if isinstance(item, django.db.models.fields.related.ForeignKey):
print(item)