我在 Django 项目中有一个简单的搜索应用程序,可以在 CMS 管理员中进行搜索。这是生成 URL 的表单:
<form method="get" action="/search"> <p><label for="id_q">搜索: < input type="text" name="q" id="id_q" /> < input type="submit" value="Submit" /></p>,这是网址:
(r'^search/$', 'search.views.search'),这是视图:
def 搜索(请求): 查询 = request.GET['q'] 结果 = FlatPage.objects.filter(content__icontains=query) 模板 = loader.get_template('search/search.html') 上下文=上下文({'查询':查询,'结果':结果}) 响应 = 模板。渲染(上下文) 返回 HttpResponse(响应),这是模板:
<html> <头> <title>搜索页面 </头> <正文> < p>您搜索了“{{ query }}”;结果如下。</p> <ul> {% for page in results %} <li><a href="{{ page.get_absolute_url }}">{{ page.title }}</a></li> {% endfor %} </ul> </正文> </html>但我不断收到此错误:
"在 <QueryDict: {} > 中找不到键 'q'". 有谁为什么,我能做什么?