aboutsummaryrefslogtreecommitdiffstats
path: root/rest_framework/renderers.py
diff options
context:
space:
mode:
Diffstat (limited to 'rest_framework/renderers.py')
-rw-r--r--rest_framework/renderers.py11
1 files changed, 4 insertions, 7 deletions
diff --git a/rest_framework/renderers.py b/rest_framework/renderers.py
index e7df8758..a6525404 100644
--- a/rest_framework/renderers.py
+++ b/rest_framework/renderers.py
@@ -21,8 +21,7 @@ from rest_framework.request import clone_request
from rest_framework.utils import dict2xml
from rest_framework.utils import encoders
from rest_framework.utils.breadcrumbs import get_breadcrumbs
-from rest_framework import VERSION, status
-from rest_framework import parsers
+from rest_framework import exceptions, parsers, status, VERSION
class BaseRenderer(object):
@@ -299,12 +298,10 @@ class BrowsableAPIRenderer(BaseRenderer):
if not api_settings.FORM_METHOD_OVERRIDE:
return # Cannot use form overloading
- request = clone_request(request, method)
try:
- if not view.has_permission(request):
- return # Don't have permission
- except Exception:
- return # Don't have permission and exception explicitly raise
+ view.check_permissions(clone_request(request, method))
+ except exceptions.APIException:
+ return False # Doesn't have permissions
return True
def serializer_to_form_fields(self, serializer):