我有一个模型叫这样的人
class person(models.Model):
choice1 = ("a","DisplayNameA", "b", "DisplayNameB")
choice1_field = models.CharField(max_length=1, choices=choice1)
choice2 = ("c","DisplayNameC", "d", "DisplayNameD")
choice2_field = models.CharField(max_length=1, choices=choice2)
# and so on, there are many fields like these
Run Code Online (Sandbox Code Playgroud)
之后,我尝试在我的视图中生成 CSV 文件
我可以循环遍历我需要的所有字段,然后像这样动态访问值
getattr(person_object, field_name)
Run Code Online (Sandbox Code Playgroud)
然而,这会返回“a”、“b”等。
我知道我可以使用 访问显示名称get_FOO_display(),其中 foo 是字段的名称。但是,由于字段的检索是动态发生的,有没有办法动态访问字段的显示名称?无需绑定函数?