aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/response.py
diff options
context:
space:
mode:
authorNikolaus Schlemm2013-05-19 09:02:07 +0200
committerNikolaus Schlemm2013-05-19 09:02:07 +0200
commit9454e23aa927931dcb7a6921c6ad238f6369e64e (patch)
tree967fcbf13b3186a187c72ca9645cb24dbf6b425a /rest_framework/response.py
parent843ae6023753a0373eb2e6398ddda93e4da74de5 (diff)
parent7c945b43f05f1b340f78c23f80c8043937c7fd2a (diff)
downloaddjango-rest-framework-9454e23aa927931dcb7a6921c6ad238f6369e64e.tar.bz2
Merge branch 'master' of git://github.com/tomchristie/django-rest-framework into issue-192-expose-fields-for-options
Diffstat (limited to 'rest_framework/response.py')
-rw-r--r--rest_framework/response.py12
1 files changed, 10 insertions, 2 deletions
diff --git a/rest_framework/response.py b/rest_framework/response.py
index 26e4ab37..32e74a45 100644
--- a/rest_framework/response.py
+++ b/rest_framework/response.py
@@ -18,7 +18,7 @@ class Response(SimpleTemplateResponse):
def __init__(self, data=None, status=200,
template_name=None, headers=None,
- exception=False):
+ exception=False, charset=None):
"""
Alters the init arguments slightly.
For example, drop 'template_name', and instead use 'data'.
@@ -30,6 +30,7 @@ class Response(SimpleTemplateResponse):
self.data = data
self.template_name = template_name
self.exception = exception
+ self.charset = charset
if headers:
for name, value in six.iteritems(headers):
@@ -46,7 +47,14 @@ class Response(SimpleTemplateResponse):
assert context, ".renderer_context not set on Response"
context['response'] = self
- self['Content-Type'] = media_type
+ if self.charset is None:
+ self.charset = renderer.charset
+
+ if self.charset is not None:
+ content_type = "{0}; charset={1}".format(media_type, self.charset)
+ else:
+ content_type = media_type
+ self['Content-Type'] = content_type
return renderer.render(self.data, media_type, context)
@property