繁体   English   中英

python的json响应

[英]json response with python

我正在使用django 1.7.1,但出现错误“不是JSON可序列化”。这是我的代码

def Project_info(request):
        project_id=request.GET.get('project_id')
        people = Project_Management.objects.all().values()
        print people
        return returnSuccessShorcut ({'people': people })



def returnresponsejson(pass_dict, httpstatus=200):
    json_out = simplejson.dumps(pass_dict)
    return HttpResponse(json_out, status=httpstatus, content_type="application/json")


def returnSuccessShorcut(param_dict={}, httpstatus=200):
    param_dict['success'] = True
    return returnresponsejson(param_dict, httpstatus)

控制台输出为:

[{'abbreviation': u'IOS', 'acid': None, 'end_date': datetime.datetime(2014, 7, 1, 4, 59, 59, tzinfo=<UTC>), 'start_date': datetime.datetime(2014, 3, 21, 5, 0, tzinfo=<UTC>), 'user_story_id': None, 'project_name': u'2014 -KHL-347/Khaylo', 'modify_date': None, 'project_id': u'67375', 'user_name': None, 'id': 1L, 'isActive': None}]

但是,当我在浏览器中点击api时,出现了以上错误。 请提出解决方案。

你需要的人转换到一个列表之前序列化,因为ValuesQuerySet返回由QuerySet.values不能被默认序列化。

def Project_info(request):
    project_id=request.GET.get('project_id')
    people = Project_Management.objects.all().values()
    people = list(people)
    return returnSuccessShorcut ({'people': people })

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM