所以我送一個JSON看起來像這樣:如何處理JSON來的QueryDict以JSON
[
{
"Datum": "textholder1",
"Bedrag": "",
"Rekening": "",
"Tegenrekening": "",
"Naam": "",
"Omschrijving": ""
},
{
"Datum": "textholder2",
"Bedrag": "",
"Rekening": "",
"Tegenrekening": "",
"Naam": "",
"Omschrijving": ""
}
]
要通過POST服務器,當我找回它,它看起來像這樣:
{
"json[1][Omschrijving]": [""],
"json[1][Rekening]": [""],
"json[0][Datum]": ["textholder1"],
"json[1][Tegenrekening]": [""],
"json[0][Rekening]": [""],
"json[0][Bedrag]": [""],
"json[0][Naam]": [""],
"json[1][Naam]": [""],
"json[0][Tegenrekening]": [""],
"json[1][Bedrag]": [""],
"json[0][Omschrijving]": [""],
"json[1][Datum]": ["textholder2"]
}
因此,您可以看到它將內部對象轉換爲json[index]
而不是保持其格式。這是正常行爲還是我在這裏做錯了?這是我如何檢索數據:
inputData = request.POST
userDataList = dict(inputData.lists())
print userDataList # prints the funny formatted JSON
print type(userDataList) # dict
print type(inputData) # django.http.request.QueryDict
如何IM播種到服務器:
frm = $("#textCSVForm");
frm.submit(function(event) {
event.preventDefault()
$.ajax({
url: frm.attr('action'),
type: frm.attr('method'),
dataType: '',
data: {
json: json.data
},
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", csrftoken);
}
}
})
.done(function(response) {
})
.fail(function() {})
.always(function() {
console.log(json.data); // logs the first formatted JSON
});
});
爲什麼你把它轉向到一個列表? – Rishav
@Rishav你指的是''''.lists()'''?根據我的測試結果,輸出有沒有差異。但我沒有特別的理由,爲什麼即時通訊使用''''.lists()'''我試過它,因爲它有一個帶有對象的數組。 – Kevin
你如何將數據發送到服務器? – Rishav