我是 Django 表单的新手,并且对一些看起来应该非常简单的事情感到困惑。
我想创建一个下拉选择器,将用户引导到详细信息页面,每年一个。
在models.py我有:
class Season(models.Model):
year = models.IntegerField(unique = True, max_length=4, verbose_name = "Season (year)")
…
class season_choice(forms.Form):
choice = forms.ModelChoiceField(queryset=Season.objects.all().order_by('year'), empty_label="Season")
class Meta:
model = Season
在我的模板中:
<form action="/season_detail/{{ choice.year }}" method="get">
{{ season_choice.as_p }}
<input type="submit" value="Go" />
</form>
下拉选择器显示得很好,生成的选项格式如下:
<select id="id_choice" name="choice">
<option selected="selected" value="">Season</option>
<option value="1">1981</option>
<option value="2">1982</option>
<option value="3">1983</option>
…
选择并提交一年,例如 1983 年,现在将我带到 /season_detail/?choice=3 当我什么类似于 /season_detail/?choice=1983
我认为我需要将其写入views.py,但是在阅读了Django文档并在此处搜索论坛并尝试了几种方法之后,我比以往任何时候都更加困惑。