我试着在django中构建jquery自动完成,但它在浏览器中返回此响应“视图rango.views.AutoCompleteView没有返回HttpResponse对象。”我哪里错了?django jquery自动完成不返回结果
在搜索框中
<form id = "aa" class = "form-inline" method = "post" action="">
{% csrf_token %}
<input type="text" name = "cat_name" class = "form-control" id = "cat" value = ""/>
<input class ="btn btn-sm btn-info" type="submit"/>
</form>
的javascript
$(function() {
$("#cat").autocomplete({
source: "/rango/autocomplete/",
minLength:2,
});
});
视图
class AutoCompleteView(FormView):
def get(self,request,*args,**kwargs):
data = request.GET
item = data.get("term")
if item:
cats = Category.objects.filter(name__icontains = item)
else:
cats = Category.objects.all()
results = []
for cat in cats:
cat_json = {}
cat_json['id'] = cat.id
cat_json['label'] = cat.item
cat_json['value'] = cat.item
results.append(cat_json)
data = json.dumps(results)
mimetype = 'application/json'
return HttpResponse(data,mimetype)
urls.py
url(r'^autocomplete/$',AutoCompleteView.as_view())
这是一个错字还是你的'return'在你的'for'里? – Gocht
你的缩进看起来很糟糕......从结果= []' – karthikr
开始,我认为它是一个错字,我正在学习一个教程。 – brxy