我在Django的一个视图中遇到了查询字符串问题。我已成功处理其他视图中的查询字符串,所以我不确定我在这里做错了什么。我把事情剥离到一个非常基本的观点,我仍然没有得到任何东西。
我的网址:
localhost/query_view/?foo=foo
我的模板:
<html>
<head>
<title>Title</title>
</head>
<body>
<p>{{ query_string }}</p>
</body>
</html>
我的观点:
def query_view(request):
query_string = request.META['QUERY_STRING']
return render(request, 'query_view.html', {'query_string': query_string})
我应该期待foo=foo
显示在页面上,对吗?目前,我什么也没得到。
编辑: Django版本1.9.4,Python版本3.4.3
答案 0 :(得分:2)
我会在返回之前放置一个调试器,以查看请求中的实际内容。但通常像request.GET.get('foo')
之类的东西会让你得到你想要的东西。此外,如果foo
实际为空,则可以提供默认值。 request.GET.get('foo', 'blah')
答案 1 :(得分:2)
尝试
def query_view(request):
query_string = request.GET.get('foo',None)
print(query_string)
return render(request, 'query_view.html', {'query_string': query_string})
并检查query_string值是否为None。
让我知道,如果它没有成功!
此外还提到你的django和python版本。