【问题标题】:How to Construct JSON string django view?如何构造 JSON 字符串 django 视图?
【发布时间】:2013-02-22 09:24:29
【问题描述】:

我想在django视图中构造这样的json:

{
    "Skills": [
        {
            "Name": "Java",
            "Value": "Java"
        },
        {
            "Name": "J2ee",
            "Value": "J2ee"
        },
        {
            "Name": "Python",
            "Value": "Python"
        },
        {
            "Name": "Django",
            "Value": "Django"
        }
    ]
}

python simplejson 不会像上面那样创建它,请提供任何建议。基本上我正在发送对 select2 标签的响应。我正在从 Jquery ajax 调用视图方法..

def populateSkills(request):
    print "Inside Populate Skills"
    preload_data = '{"Skills":[{"Name":"Java","Value":"Java"},{"Name":"J2ee","Value":"J2ee"},{"Name":"Python","Value":"Python"},{"Name":"Django","Value":"Django"}]}'
    return HttpResponse(simplejson.dumps(preload_data), content_type="application/json")

我对 preload_data 进行了硬编码,因为我无法构造它。那么我该如何构建它呢?有 JSONObject 来做吗?

【问题讨论】:

  • 希望您能更详细地解释这个问题。你得到什么 JSON?什么是输入?
  • preload_data 是字符串,而不是具有嵌套结构的字典。所以dumps() 会将此字符串作为 JSON 字符串返回。
  • preload_data 字符串中已经有一些编码为 json 的数据。您正在尝试使用 dumps() 再次对其进行编码。如果你已经有 json 编码的字符串,你可以直接输出:return HttpResponse(preload_data, content_type="application/json").

标签: jquery python ajax django json


【解决方案1】:

使用simplejson

import simplejson
simplejson.dumps({'Skills': [{'Name': 'Java', 'Value': 'Java'}, {'Name': 'J2ee', 'Value': 'J2ee'}, {'Name': 'Python', 'Value': 'Python'}, {'Name': 'Django', 'Value': 'Django'}] })

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-10-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多