点击搜索按钮后,我有这个网址:
127.0.0.1:8000/results/?name=blab&city=bla&km=12
我的观点:
def search(request):
name = request.GET.get('name')
city = request.GET.get('city')
km = request.GET.get('km')
if name!="" and name != None:
locations = Location.objects.filter(name__istartswith=name)
return render_to_response("result-page.html",{'locations':locations},context_instance=RequestContext(request))
if city!="" and city != None:
locations = Location.objects.filter(city__istartswith=city)
return render_to_response("result-page.html",{'locations':locations},context_instance=RequestContext(request))
但是现在,如果我同时查找名称和城市,它只会在名称之后给出结果搜索。例如第一个参数。第二个没有被采取。
最好的逻辑是什么?我也希望能够对搜索结果进行排序。你能给我一些提示吗?如何以干净的逻辑处理这种事情。
谢谢