javascript无法识别python列表

时间:2015-02-12 08:01:38

标签: javascript python django

这是我的views.py

from django.utils import simplejson
from django.core import serializers

def get_contacts(request):
    context = RequestContext(request)
    cat_list = []

        cat_list = contact.objects.all()
        friend_list=serializers.serialize('json',cat_list)
        return HttpResponse(friend_list,mimetype="application/json")

这是我的js

$.get('/share_win/get_contacts/', function(data) {
    alert(data);
    $("#search").autocomplete({
        source: data
    });
}).fail(function(error) {
    alert('error');
});

运行警报(数据)后,它键入[object Object],... [object Object],但它应该打印name1而不是Object。 有什么想法??

2 个答案:

答案 0 :(得分:1)

我想你想要返回一个字符串列表而不是对象。如果是,请使用values_list()方法并使用simplejson“序列化”此列表:

cat_list = contact.objects.all().values_list('name', flat=True)
friend_list = simplejson.dumps(list(cat_list))

namecontact模型中的字段。

答案 1 :(得分:0)

为了你的警报我想说试试这个, 但我真的不明白你的代码,

$.get('/share_win/get_contacts/', function(e) {
    alert(JSON.parse(e.data));
    $("#search").autocomplete({
        source: data
    });
}).fail(function(error) {
    alert('error');
});