Eu estou tentando usar o Django com autocomplete da IU de jquery mas tendo problemas para enviar resposta.
Aqui está o meu código:
def ajax_tags_autocomplete(request):
""" Autocomplete for tag list """
beginning_of_title = request.GET.get("term", "")
tags_found = Tag.objects.values_list("title", flat=True).filter(title__startswith=beginning_of_title)
return HttpResponse(json.dumps(tags_found), mimetype="application/json")
Eu recebo um erro:
[u"php"] is not JSON serializable
Por quê? Não é possível serializar uma lista? O que devo passar para o serializador, então?
Eu ficaria muito grato por qualquer conselho.
Respostas:
9 para resposta № 1Tem certeza de que na verdade é uma lista contendo objetos unicode e não uma lista contendo alguns objetos de banco de dados? u"php"
pode ser apenas o repr()
do objeto.
Experimentar json.dumps([unicode(t) for t in tags_found])
ou json.dumps(map(unicode, tags_found))