我知道已经提出了类似的问题,但我很难过。我在models.py中有一个月份列表:
MONTH_CHOICES = [
(1, 'January'),
(2, 'February'),
(3, 'March'),
.....etc.......
]
month = models.CharField(max_length=120, null=False, blank=False)
在forms.py中:
month = ChoiceField(choices=MONTH_CHOICES, required=True)
然后我有一张桌子,我想要显示(winners.html)月份值,(1月,2月等)不是(1,2,3 ......)我有这个:< / p>
{% for w in winners %}
{{ w.get_month_display }}
现在不显示数字(1,2,3 ......),而是显示任何内容。我错过了什么?
答案 0 :(得分:1)
您尚未告诉模型字段使用这些选项 - 因此甚至不会定义get_month_display。
另外,我不明白为什么你将字段定义为长度为120的char字段:它应该是一个整数字段,因为这是你的值。
month = models.IntegerField(choices=MONTH_CHOICES, null=False, blank=False)
答案 1 :(得分:0)
您已在表单字段中设置choices
,但尝试从模型字段中获取它。为什么不使用modelforms https://docs.djangoproject.com/en/dev/topics/forms/modelforms/