diff options
Diffstat (limited to 'rest_framework')
| -rw-r--r-- | rest_framework/generics.py | 2 | ||||
| -rw-r--r-- | rest_framework/views.py | 12 |
2 files changed, 10 insertions, 4 deletions
diff --git a/rest_framework/generics.py b/rest_framework/generics.py index 901d23d1..44f677cc 100644 --- a/rest_framework/generics.py +++ b/rest_framework/generics.py @@ -23,7 +23,7 @@ class BaseView(views.APIView): """ return { 'request': self.request, - 'format': self.format, + 'format': self.format_kwarg, 'view': self } diff --git a/rest_framework/views.py b/rest_framework/views.py index 0359c225..166bf0b1 100644 --- a/rest_framework/views.py +++ b/rest_framework/views.py @@ -162,13 +162,19 @@ class APIView(View): """ return [throttle(self) for throttle in self.throttle_classes] + def get_content_negotiator(self): + """ + Instantiate and return the content negotiation class to use. + """ + return self.content_negotiation_class() + def perform_content_negotiation(self, request, force=False): """ Determine which renderer and media type to use render the response. """ renderers = self.get_renderers() - conneg = self.content_negotiation_class() - return conneg.negotiate(request, renderers, self.format, force) + conneg = self.get_content_negotiator() + return conneg.negotiate(request, renderers, self.format_kwarg, force) def has_permission(self, request, obj=None): """ @@ -198,7 +204,7 @@ class APIView(View): """ Runs anything that needs to occur prior to calling the method handlers. """ - self.format = self.get_format_suffix(**kwargs) + self.format_kwarg = self.get_format_suffix(**kwargs) if not self.has_permission(request): self.permission_denied(request) |
