【问题标题】:Django json single and double quotes?Django json单引号和双引号?
【发布时间】:2012-04-24 09:02:50
【问题描述】:

我注意到如果你在 django 中使用 simplejson 函数,所有的字符串都用单引号括起来,整个 json 对象字符串用双引号括起来。当我把这个字符串交给 JSON.parse 时,它​​给了我一个错误,因为他们想使用单引号将整个对象括起来,并为字符串使用双引号。我可以用javascript替换来切换它们,但是我必须考虑像撇号这样的情况,但我相信有更好的方法。有没有办法让django的simplejson将对象字符串输出为JSON.parse的格式?

更多信息:

django 视图:

def view(request):
    list = [{"a":"apple",},]
    return HttpResponse(simplejson.dumps(str(list)), mimetype="application/json")

javascript 字符串是什么

"[{'a': '苹果'}]"

【问题讨论】:

    标签: javascript python django json


    【解决方案1】:

    更新 删除列表周围的str(),只需simplejson.dumps(list)str() 将列表转换为字符串,因此您在客户端获得了"[{'a': 'apple'}]"

    您能否将问题更新为 demo,其中 simplejson 用单引号括起字符串?

    django.utils.simplejson 通常与JSON specification 一致,并且不使用单引号来包装内容。如果你的意思是

    >>> from django.utils.simplejson import dumps
    >>> dumps("Hello")
    '"Hello"' # single quotes here
    >>> repr(dumps("Hello"))
    '\'"Hello"\'' # or here
    

    它们是 Python 的符号,你不想在 JSON.parse 中直接使用它们(虽然第一个没问题)。

    【讨论】:

    • 添加了更多信息,另外我喜欢你的用户图片
    猜你喜欢
    • 2011-05-08
    • 2013-12-14
    • 2013-02-16
    • 2013-08-25
    • 2011-01-23
    • 2011-06-02
    • 1970-01-01
    相关资源
    最近更新 更多