django模板<select>框没有选择值

时间:2017-12-27 10:21:33

标签: python django django-templates

Django模板我的选择框没有选择值我有以下代码。 template_name.html &lt; select name =&#34; class_id&#34; &GT; {%for class in%}     &lt; option value =&#34; {{object.id}}&#34;         {%if if object.id == class_id%} selected =&#34; selected&#34; {%endif%}&gt;         {{object.name}}     &LT; /选项&GT; {%endfor%} &LT; /选择&GT; view.py class_id = request.POST.get(&#39; class_id&#39;,0) context_data = {&#39; class_id&#39;:class_id} return render(request,&#34; template_name.html&#34;,context_data) 这种行为很奇怪,因为我在模板中运行此代码 {%for class in%}     {{object.id}} = {{class_id}}&lt; br&gt; {%endfor%} 然后我得到以下输出 1 = 3 2 = 3 3 = 3

1 个答案:

答案 0 :(得分:2)

那是因为你从post获得的那个是默认的字符串,但是object.id是int

在视图中

class_id = request.POST.get('class_id', 0)
context_data = {'class_id':int(class_id)}