表单未正确显示在html中。我在search.html中写道,
{% load static %}
<form action='/search/' method='POST>
<table>
{{ form.as_table }}
</table>
<input name="submit" type="Search" />
{% csrf_token %}
</form>
在views.py中
def search(request):
form = SearchForm()
if request.method == 'GET':
return render_to_response(
'search.html', {'form': form}, RequestContext(request))
elif request.method == 'POST':
form = SearchForm(request.POST)
search_result = POST.objects.all()
if form.is_valid():
result = search_result.filter(Q(title__contains=form.cleaned_data['keyword']))
return render_to_response('search.html',{'form':form, 'result':result})
当我访问搜索方法时,search.html显示为字符串 now search.html
它不是From,所以我真的无法理解为什么会发生这样的事情。没有发生错误但是UserWarning:在模板中使用了{% csrf_token %}
,但是上下文没有提供值。这通常是由于不使用RequestContext
引起的。
&#34;在模板中使用了{% csrf_token %}
,但是上下文&#34;在终端显示。我该如何解决这个问题?我的代码有什么问题?
答案 0 :(得分:0)
这可能不是问题,但我认为你的输入标签是错误的,应该是这样的:
<input name="submit" type="Search">