aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/renderers.py
diff options
context:
space:
mode:
authorTom Christie2013-05-18 17:22:27 +0100
committerTom Christie2013-05-18 17:22:27 +0100
commitbac4bf6e95d6cc6828115bd0a79cd524a6abd163 (patch)
tree431794e91dec87c099ffb3dcce8a50c4ce0507e7 /rest_framework/renderers.py
parent0d3d66cb0232e1067600ef22fcf88937ac6bee9d (diff)
parent6af61a19b78b0ebb9d8403e96c6e4a77c675b141 (diff)
downloaddjango-rest-framework-bac4bf6e95d6cc6828115bd0a79cd524a6abd163.tar.bz2
Merge branch 'master' of https://github.com/tomchristie/django-rest-framework
Diffstat (limited to 'rest_framework/renderers.py')
-rw-r--r--rest_framework/renderers.py9
1 files changed, 7 insertions, 2 deletions
diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py
index b91e3861..a67c5eea 100644
--- a/rest_framework/renderers.py
+++ b/rest_framework/renderers.py
@@ -50,6 +50,7 @@ class JSONRenderer(BaseRenderer):
media_type = 'application/json'
format = 'json'
encoder_class = encoders.JSONEncoder
+ ensure_ascii = True
def render(self, data, accepted_media_type=None, renderer_context=None):
"""
@@ -73,7 +74,11 @@ class JSONRenderer(BaseRenderer):
except (ValueError, TypeError):
indent = None
- return json.dumps(data, cls=self.encoder_class, indent=indent)
+ return json.dumps(data, cls=self.encoder_class, indent=indent, ensure_ascii=self.ensure_ascii)
+
+
+class UnicodeJSONRenderer(JSONRenderer):
+ ensure_ascii = False
class JSONPRenderer(JSONRenderer):
@@ -326,7 +331,7 @@ class BrowsableAPIRenderer(BaseRenderer):
renderer_context['indent'] = 4
content = renderer.render(data, accepted_media_type, renderer_context)
- if not all(char in string.printable for char in content):
+ if not isinstance(content, six.text_type):
return '[%d bytes of binary content]'
return content