aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/negotiation.py
diff options
context:
space:
mode:
authorKarol Majta2013-05-18 16:45:05 +0200
committerKarol Majta2013-05-18 16:45:05 +0200
commitebe959b52a10a88975b15c69275b0ef5c50cb9fa (patch)
treed54eab80e5238b1b6312cdd3916a1f90522ab8c4 /rest_framework/negotiation.py
parentb950b025bc66e3018d5f74e1494ff17f7742be75 (diff)
downloaddjango-rest-framework-ebe959b52a10a88975b15c69275b0ef5c50cb9fa.tar.bz2
charset param gets now appended to response's Content-Type. Closes #807
Diffstat (limited to 'rest_framework/negotiation.py')
-rw-r--r--rest_framework/negotiation.py10
1 files changed, 8 insertions, 2 deletions
diff --git a/rest_framework/negotiation.py b/rest_framework/negotiation.py
index 4d205c0e..668c4e5c 100644
--- a/rest_framework/negotiation.py
+++ b/rest_framework/negotiation.py
@@ -58,11 +58,17 @@ class DefaultContentNegotiation(BaseContentNegotiation):
_MediaType(media_type).precedence):
# Eg client requests '*/*'
# Accepted media type is 'application/json'
- return renderer, renderer.media_type
+ renderer_and_media_type = renderer, renderer.media_type
else:
# Eg client requests 'application/json; indent=8'
# Accepted media type is 'application/json; indent=8'
- return renderer, media_type
+ renderer_and_media_type = renderer, media_type
+ if renderer.charset:
+ charset = renderer.charset
+ else:
+ charset = self.__class__.settings.DEFAULT_CHARSET
+ retval = renderer_and_media_type + (charset,)
+ return retval
raise exceptions.NotAcceptable(available_renderers=renderers)