Python Django反序列化

Python Django反序列化,python,django,serialization,Python,Django,Serialization,我得到以下错误: 回溯(最近一次呼叫最后一次): 文件“./tests.py”,第92行,在测试单搜索中 对于序列化程序中的返回对象。反序列化(“json”,响应,确保\u ascii=False): 文件“/Library/Python/2.6/site packages/django/core/serializers/json.py”, 第38行,在反序列化程序中 对于PythonDeserializer(simplejson.load(stream))中的obj, **选项):文件“/Sy

我得到以下错误:

回溯(最近一次呼叫最后一次):
文件“./tests.py”,第92行,在测试单搜索中

对于序列化程序中的返回对象。反序列化(“json”,响应,确保\u ascii=False):
文件“/Library/Python/2.6/site packages/django/core/serializers/json.py”, 第38行,在反序列化程序中 对于PythonDeserializer(simplejson.load(stream))中的obj, **选项):文件“/System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/json/init.py”, 第264行,已加载 返回加载(fp.read(),AttributeError:'HttpResponse'对象 没有属性“read”

在views.py中,序列化工作正常:

resultsjson = serializers.serialize("json", results, ensure_ascii=False)
return HttpResponse(resultsjson, mimetype = 'application/json')
但是,当我尝试在test.py中的调用方法中处理结果时:

response = self.client.get("/path/?query=testValue")
for return_obj in serializers.deserialize("json", response, ensure_ascii=False):
      print return_obj

我得到了上面的错误。有没有人遇到过同样的错误。我正在使用Django 1.2(svn的最新版本)而且它似乎在使用内置的simplejson Serializer。

在调用
反序列化
时,需要使用
response.content
而不仅仅是
response
。response对象是HttpResponse的一个实例,但有一个
content
属性,在本例中包含实际的JSON。

是的,try
序列化程序。反序列化(“json”,response.content,确保_ascii=False)
正如Daniel建议的那样,对于较新的Django版本,使用
json
。因此它应该是
json.loads(response.content)