我的模板:
<form action="{% url 'student:filter' %}" method='get'>
<select>
<option value="00">----</option>
<option value="01">Jan</option>
<option value="02">Feb</option>
<option value="03">Mar</option>
<option value="04">Apr</option>
<option value="05">May</option>
<option value="06">Jun</option>
<option value="07">Jul</option>
<option value="08">Aug</option>
<option value="09">Sept</option>
<option value="10">Oct</option>
<option value="11">Nov</option>
<option value="12">Dec</option>
</select>
</form>
views.py:
def filter(request, value):
value = request.GET['value']
att = Attendancename.objects.filter(date__hours=int(value))
return render(request, 'listfilter.html', {'attend': att})
urls.py:
url(r'^filter/(?P<value>\d+)$', views.filter, name = 'filter'),
我想要的是从html下拉列表中选择一个特定月份,并且需要在我的views.py中通过url的参数传递其相应的值,然后在查询查询中使用该参数。 / p>
但事情并没有按照我的意愿行事。我的模板出错了,我不确切知道如何在下拉列表中触发与所选值相对应的操作。
请!谁能告诉我如何使其正确?
谢谢!提前......
答案 0 :(得分:1)
不要试图在slug中传递这些数据。在这种情况下,使用查询字符串,浏览器将自动附加GET。
<form action="{% url 'student:filter' %}" method='get'>
<select name="filter">
...
def filter(request):
value = request.GET['value']
url(r'^filter/$', views.filter, name = 'filter'),