2013-04-08 84 views
1

在第一次迭代规划时只做GET,进行简单的REST服务(在django-simple-rest上)。一切都不错,但在响应我接受西里尔字母符号:django-simple-rest中的非拉丁符号

>\u041c\u043e\u043b\u043e\u043a\u043e 

在我的实验,我瑶池行:

recipes_rest = json_serializer.serialize(Post.objects.all()) 
return HttpResponse(recipes_rest, content_type='application/json; charset=utf8', status=200) 

如果我使用:

recipes_rest = 'some non latin symbols' 

一切都很好。但在我的情况下,http://cooktalks.ru/contacts我找不到解决方案。也许我必须做的事情在这行(?):

recipes_rest = json_serializer.serialize(Post.objects.all()) 

UPDATE 如果我使用 'XML',一切都很好: contacts = serializers.serialize("xml", Post.objects.all())

+0

如果我使用 'XML',一切都很好: '接触= serializers.serialize( “XML”,Post.objects.all())' – Rukomoynikov 2013-04-09 10:47:17

回答

0

解决))

了解这个美丽的文档:

如果您使用UTF-8(或任何其他非ASCII编码)与JSON序列数据,你必须通过ensure_ascii = False作为serialize()调用的参数。否则,输出将不会被正确编码。

json_serializer.serialize(queryset, ensure_ascii=False, stream=response) 
相关问题