要获得具有选项的字段的人类可读值,Django提供get_FOO_display()
方法。
当字段在ArrayField中时,如何获取人类可读的值?
例如:foo_array = models.ArrayField(models.CharField(choices=choices))
答案 0 :(得分:0)
由于ArrayField
没有选择,模型不会自动获取方法,但您可以随时手动实现。
class MyModel(models.Model):
foo_array = models.ArrayField(models.CharField(choices=choices))
def get_foo_array_display(self):
values = self.foo_array
return [force_text(dict(self.foo_array.flatchoices).get(value, value), strings_only=True)
for value in values]