diff options
| author | Miro Hrončok | 2014-04-10 01:35:45 +0200 | 
|---|---|---|
| committer | Miro Hrončok | 2014-04-10 01:47:30 +0200 | 
| commit | 7ae8409370635ccec7d3c160ea87281f21c9ae11 (patch) | |
| tree | 67dd7bb246818b30687ea5437029846871e3f0a8 /rest_framework/renderers.py | |
| parent | b0ba8d61ecf3c74470fa6ac019caff1fd4ca1be6 (diff) | |
| download | django-rest-framework-7ae8409370635ccec7d3c160ea87281f21c9ae11.tar.bz2 | |
Allow unicode YAML dump with UnicodeYAMLRenderer
Fixes #1519
Diffstat (limited to 'rest_framework/renderers.py')
| -rw-r--r-- | rest_framework/renderers.py | 11 | 
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): | 
