def search(request):
query = request.GET.get('q')
....
....
return render(request, 'search.html', {'list': list})
表单看起来像这样,
<form method="get" action="{% url 'new:search' %}">
<input type="text" name="q" value="{{ request.GET.q }}">
<input type="submit" value="Search" />
</form>
此处一切正常,但如果用户只需按下“搜索”按钮,它就会显示所有数据,而不是什么都不做。
那么,当用户在没有输入初始数据的情况下直接按下搜索按钮时,如何让这个搜索功能不执行任何操作?
请您参考如下方法:
根据您提供的功能,list 必须是“所有数据”,因此您需要在没有它的情况下返回。
def search(request):
q = request.GET.get('q', None)
if not q:
return render(request, 'search.html', {'list': []})
else:
....
return render(request, 'search.html', {'list': list})
