0

我处于使用和属性autocomplete触发http请求的位置。我设法处理了输入并生成了一个结果列表。getqq

然后我将列表序列化json并发送回,但不知何故我看不到结果。

这是我的视图代码:

def autocomplete_company(request):
    if request.is_ajax():
        q = request.GET.get('q', '')
        companies = Company.objects.filter(name__icontains = q ).order_by('name')[:10]
        results = companies.values_list('name', flat=True)
        data = simplejson.dumps([unicode(r) for r in results])
    else:
        data = 'fail'

    return HttpResponse(data, mimetype="application/json")

阿贾克斯:

$(function(){
  $("#search_type").autocomplete("/company/autocomplete/",{
    minChars: 2
  });
});

有什么想法吗?

4

1 回答 1

0

您忘记在请求中传递查询字符串“q”

$(function(){
  $("#search_type").autocomplete("/company/autocomplete/?q='your_search_string'",{
    minChars: 2
  });
});

q = request.GET.get('q', '')
于 2012-11-27T16:18:21.753 回答