aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/utils
diff options
context:
space:
mode:
authorIgor Kalat2013-06-22 13:43:45 +0200
committerIgor Kalat2013-06-22 19:21:28 +0200
commit2bf5f6305030d5ebbd5a8a0fd5c31586c08a558d (patch)
treedc33e35455227c1cd106c2d0d1ec4e59a31dea07 /rest_framework/utils
parentdf957c8625c79e36c33f314c943a2c593f3a2701 (diff)
downloaddjango-rest-framework-2bf5f6305030d5ebbd5a8a0fd5c31586c08a558d.tar.bz2
Make browsable API views play nice with utf-8
Diffstat (limited to 'rest_framework/utils')
-rw-r--r--rest_framework/utils/formatting.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/rest_framework/utils/formatting.py b/rest_framework/utils/formatting.py
index ebadb3a6..a2a5609c 100644
--- a/rest_framework/utils/formatting.py
+++ b/rest_framework/utils/formatting.py
@@ -24,6 +24,11 @@ def _remove_leading_indent(content):
Remove leading indent from a block of text.
Used when generating descriptions from docstrings.
"""
+ try:
+ content = content.decode('utf-8')
+ except (AttributeError, UnicodeEncodeError):
+ pass # the string should keep the default 'ascii' encoding in
+ # Python 2.x or stay a unicode string in Python 3.x
whitespace_counts = [len(line) - len(line.lstrip(' '))
for line in content.splitlines()[1:] if line.lstrip()]