我通过 jQuery Ajax 以 JSON 的形式将大量数据推送到 Django 应用程序。数据由服务器接收,但我无法解析它。
在我的视图文件中,我有
from django.http import HttpResponse
from django.utils import simplejson
def saveStrategy(request):
if not request.user.is_authenticated:
return HttpResponse(simplejson.dumps({"response" : "failure"}))
else:
#This section here throws a TypeError - Expected String or Buffer
#update_tasks = simplejson.loads(request.POST.get("tasks", False))
#update_strategy = simplejson.loads(request.POST.get("strategy", False))
update_strategy = request.POST.get("strategy", False)
update_tasks = request.POST.get("tasks", False)
print update_strategy
return HttpResponse(simplejson.dumps({"response" : "success"}))
这是目的地
if (typeof currentTaskId !== "undefined") {
$("#save_strategy_task").trigger("click");
localTasks = JSON.stringify(tasks)
}
else
localTasks = {};
.ajax({
url : "saveStrategy/",
type : "POST",
data : {"strategy" : JSON.stringify(strategy), "tasks" : localTasks},
dataType : "json",
success : function(data) {
if (data.response == "success")
strategyDetailCloseHandler();
}
});
现在,当update_strategy
不参与时simplejson
,我得到
{
"title":"Title",
"status":"pending",
"strategy":"Strategy",
"dueDate":"",
"owner":"",
"metrics":"test",
"id":"3",
"outcome":"Outcome1"
}
但是,如果我尝试
print update_strategy["id"]
我得到TypeError: string indices must be integers
错误。
如何解析传入的 JSON 以更新现有的模型对象?