template: form表单: <form action="" method='GET'> <div class="input-group"> <input type="text" class="form-control" placeholder='输入要查询的号码,例:13800138000' name='querynumber' id='querynumber'> <span class="input-group-btn"><button class="btn btn-primary" type="submit" id='btphonenumber'>点击查询</button> </span> </div> </form> 普通url: <a href="{% url 'front_comment_list' querynumber=phonenumber.number page=1%}">
urls: url(r'^$',views.comment_list,name='front_index'), url(r'^comment_list/(?P<querynumber>d+)/(?P<page>d+)/$',views.comment_list,name='front_comment_list'), views: def comment_list(request,page=1,querynumber=0): q = request.GET.get('querynumber') print 'q',q # # 先判断q有没有,如果有,说明是form表单提交上来的,就把querynumber=q,然后执行同样的代码 if q: querynumber = q print 'querynumber',querynumber pass
- 在表单中,表单是通过按钮提交参数到服务器,即loacation/?q=xxx的传递形式
- 但是普通url可以跟参数直接发送。
- 因此在views里获取的方式也不同。form表单的可以通过 q=request.GET.get('querynumber')的形式来获取,普通的url可以直接通过传进来的参数进行获取。