django - 通过详细名称获取字段

时间:2018-06-10 17:59:25

标签: django field

假设我在Foo模型

中有此字段
field1 = CharField(max_length=10, verbose_name='Bar')

有没有办法通过field1

返回verbose_name

这是我的可视化,但它会抛出TypeError

Foo._meta.get_field(verbose_name='Bar')

1 个答案:

答案 0 :(得分:0)

您可以手动过滤这些内容,并返回匹配的第一个:

my_field = next(
    field for field in Foo._meta.get_fields() if field.verbose_name='Bar'
)

如果不存在此类字段,则会引发StopIteration

可能有多个此类字段。例如,我们可以使用类似的列表理解生成这些字段的列表:

all_bar_fields = [
    field for field in Foo._meta.get_fields() if field.verbose_name='Bar'
]