2014-12-03 101 views
0

我知道类似的问题已被问到,但我很难过。我有个月的models.py列表:Django:显示选择值不显示

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,3 ......),我有这样的:

{% for w in winners %} 
    {{ w.get_month_display }} 

现在,而不是显示的号码(1,2,3 .....它只是没有显示任何内容。我错过了什么?

回答

1

你还没有告诉模型领域使用的选择 - 所以get_month_display甚至不会被定义。

此外,我不明白为什么你已经定义字段是一个长度为120的char字段:它应该是一个整数字段,因为这就是你的值。

month = models.IntegerField(choices=MONTH_CHOICES, null=False, blank=False)