这应该很简单,但我似乎无法弄清楚,我无法在网上找到答案。
我有一个有三页的网站:在第一页上,用户提交一个表格,为“公园”创建一个GET请求。第二页有另一个表单,提示用户提供更多信息,这些信息将添加到下一页的查询中。
现在我的问题是:如何使用上一个表单中的“park”附加GET查询,而不要求用户再次输入。
以下是一些相关代码:
<form class="next-page" role="next-page" method="get" accept-charset="utf-8" action="/trip">
<div class="dates">
<h1>When do you want to go?</h1>
{{daterange}}
</div>
我希望后续页面的网址如下所示:
/跳闸公园=锡安+国家公园+&安培;起始日期= 04%2F12%2F2016&安培; END_DATE = 04%2F13%2F2016
如果有人可以提供帮助,谢谢。
答案 0 :(得分:4)
您可以使用request.GET.get('start_date', '')
从网址捕获值。你可以在你的视图中进行这样的编码:
def someview(request):
if request.method == 'GET':
form = SomeForm()
start_date = request.GET.get('start_date', '')
end_date = request.GET.get('end_date', '')
daterange = '{}-{}'.format(start_date, end_date)
context = {'form': form}
context['daterange'] = daterange
return render(request, 'my_template.html', context)
else:
form = SomeForm(request.POST)
if form.is_valid():
return redirect('success_url')