我想传递两个名为mydataand 的数据查询结果yourdata,问题是当我只发送mydata或yourdata然后它工作正常但是当我发送上下文变量时它根本不起作用,我是新手,django所以任何形式的帮助都将不胜感激,谢谢.@csrf_exemptdef snippetrequests(request): import json mydata=changerequest.objects.filter(owner_id=request.user.id) yourdata=changerequest.objects.filter(user_id=request.user.id) mydata=serializers.serialize('json',mydata) yourdata=serializers.serialize('json',yourdata) if request.method == 'GET': context = { 'mydata':mydata , 'yourdata':yourdata } return HttpResponse(context, content_type="application/json" ) 我使用这样的 AJAX 从中获取数据$.ajax({ url: '/snippetrequests/', type: 'GET', data={}, success: function(data) { // alert(data); alert(data) console.log(data) var div1 = document.getElementById('snippet'); }, failure: function(data) { alert('Got an error dude'); }});
2 回答
慕丝7291255
TA贡献1859条经验 获得超6个赞
您已经序列化了模型数据,但没有序列化您的直接响应;它仍然是字典格式。因此,HTTPResponse很可能只是返回一个有点像 JSON 的字符串,而不是实际的 JSON。
使用json.dumps作为您的部分return发言。
return HttpResponse(json.dumps(context), content_type="application/json")
或者更好的是,如果您使用的是 Django 1.7+,请使用该JsonResponse对象:
from django.http import JsonResponse
. . .
return JsonResponse(context)
添加回答
举报
0/150
提交
取消