aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/renderers.py
diff options
context:
space:
mode:
authorCarlton Gibson2014-04-15 15:13:51 +0200
committerCarlton Gibson2014-04-15 15:13:51 +0200
commitc93ddf1750267f9145cbea556deb412fa5b7123e (patch)
tree6f642c087569447d000a0e02c0290f5bcad05b41 /rest_framework/renderers.py
parentb3b0515ae6325e7de6a582bbb2fd7eeac687c325 (diff)
parent617c9825913cfc0cdeaa4405df0b885db0a9ff60 (diff)
downloaddjango-rest-framework-c93ddf1750267f9145cbea556deb412fa5b7123e.tar.bz2
Merge pull request #1520 from hroncok/patch-2
Allow unicode YAML dump
Diffstat (limited to 'rest_framework/renderers.py')
-rw-r--r--rest_framework/renderers.py11
1 files changed, 10 insertions, 1 deletions
diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py
index 7a7da561..484961ad 100644
--- a/rest_framework/renderers.py
+++ b/rest_framework/renderers.py
@@ -193,6 +193,7 @@ class YAMLRenderer(BaseRenderer):
format = 'yaml'
encoder = encoders.SafeDumper
charset = 'utf-8'
+ ensure_ascii = True
def render(self, data, accepted_media_type=None, renderer_context=None):
"""
@@ -203,7 +204,15 @@ class YAMLRenderer(BaseRenderer):
if data is None:
return ''
- return yaml.dump(data, stream=None, encoding=self.charset, Dumper=self.encoder)
+ return yaml.dump(data, stream=None, encoding=self.charset, Dumper=self.encoder, allow_unicode=not self.ensure_ascii)
+
+
+class UnicodeYAMLRenderer(YAMLRenderer):
+ """
+ Renderer which serializes to YAML.
+ Does *not* apply character escaping for non-ascii characters.
+ """
+ ensure_ascii = False
class TemplateHTMLRenderer(BaseRenderer):