我有一个非常简单的选择场在我的模型:get_FOO_display返回空字符串
MY_TYPES = (
(1, _("Type 1")),
(2, _("Type 2")),
(3, _("Type 3"))
)
my_field = models.IntegerField(choices=MY_TYPES, default=1)
_
作为from django.utils.translation import ugettext_lazy as _
我得到正确的结果导入时我manage.py shell_plus
。例如:
m = MyModel.objects.get(pk=1)
m.get_my_field_display() # returns the value correctly
但是,它返回我的模板空字符串:{{ m.get_my_field_display }}
编辑:我忘了提,我使用values_list()
从我的观点:MyModel.objects.values_list('my_field', 'others')
任何帮助表示赞赏。
'm'对'my_field'有效吗? – Rohan
模板中显示{{m.my_field}}是什么?通过使用组成的变量名称,您可能会隐藏问题。 – Alasdair
'm.my_field'返回正确的整数值。我只注意到我正在使用values_list()可能是问题。我会更新我的问题。 – Ali