Python:列表到 JSON

标签 python django jquery-ui-autocomplete

我正在尝试将 Django 与 jquery UI autocomplete 一起使用但无法发送响应。

这是我的代码:

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')

我得到一个错误:

[u"php"] is not JSON serializable

为什么?无法序列化列表?那么,我应该将什么传递给序列化程序?

如果有任何建议,我将不胜感激。

最佳答案

你确定它实际上是一个包含 unicode 对象的列表而不是一个包含一些数据库对象的列表吗? u"php" 可能只是对象的 repr()

试试 json.dumps([unicode(t) for t in tags_found])json.dumps(map(unicode, tags_found))

关于Python:列表到 JSON,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6056418/

相关文章:

python - Django:了解 QuerySet API

jquery - 显示自动完成的下拉菜单不起作用

python - 向 polls urls.py 添加额外的过滤器会导致测试失败

javascript - 自动完成jquery函数

javascript - 如何附加 jquery ui 自动完成元素?

Python将 bool 数组转换为二进制

python - “ float ”对象没有属性 'replace' IP 地址

python - 如何将 numpy.matrix 或数组转换为 scipy 稀疏矩阵

python - 尝试将卷绑定(bind)到 docker 容器

python - 使用 Windows 10 使用 django-extensions 生成 PNG 格式的模型图(不使用 Conda 或 Anaconda)