0

Python/Django 経由で JSON としてデータを返しています。

以下のコードを使用しました。

jsonObject = serializers.serialize('json', object, fields=('value', 'record_time'))
return HttpResponse(json.dumps(jsonObject), mimetype="application/json")

問題は、次のような応答が得られることです。

"[{\"pk\": null, \"model\": \"model.table\", \"fields\": {\"record_time\": \"2009-11-18T22:45:44Z\", \"value\": 0.6533125480476399}}, {\"pk\": null, \"model\": \"model.table\", \"fields\": {\"record_time\": \"2009-11-19T15:02:15Z\", \"value\": 0.4386133754377899}}]"

ここで、以下の形式で取得する必要があります。

"[
  {
   "pk": null, 
   "model": "model.table", 
   "fields": 
      {
        "record_time": "2009-11-18T22:45:44Z", 
        "value": 0.6533125480476399
      }
  }, 
  {
    "pk": null, 
    "model": "model.table", 
    "fields": 
      {
        "record_time": "2009-11-19T15:02:15Z", 
        "value": 0.4386133754377899
      }
  }
]"

ここでどこが間違っていますか?

4

2 に答える 2

1

オブジェクトを にシリアル化してjsonObjectいますが、元の を返しますobject。それを修正するだけで、すべてが期待どおりに機能するはずです。

アップデート:

次のようにコードを変更するだけです。

jsonObject = serializers.serialize('json', object, fields=('value', 'record_time'))
return HttpResponse(jsonObject, mimetype="application/json")

変更はjsonObject2 行目です。

于 2013-09-26T08:36:58.387 に答える
0

あなたが間違っているのは、JSON 文字列の印刷された表現を実際の文字列自体と混同していることです。これらのスラッシュは、文字列内の二重引用符が文字列を終了しているのではなく、文字列の一部であることを示す単なるコンソールです。つまり、JSON は問題ありません。

于 2013-09-26T08:38:13.930 に答える