diff options
| author | Tom Christie | 2013-02-11 13:02:20 +0000 | 
|---|---|---|
| committer | Tom Christie | 2013-02-12 08:58:28 +0000 | 
| commit | f5a0275547ad264c8a9b9aa2a45cc461723a4f11 (patch) | |
| tree | a73b8835792eca9053ad5c4bc2c91ae7b1ae040b /rest_framework/renderers.py | |
| parent | 09b01887f234be55c14943028330f569823b2369 (diff) | |
| download | django-rest-framework-f5a0275547ad264c8a9b9aa2a45cc461723a4f11.tar.bz2 | |
Tidy up internal view permission checking logic.
Also document correctly - these methods are now public and will fall
under the deprecation policy from now on.
Diffstat (limited to 'rest_framework/renderers.py')
| -rw-r--r-- | rest_framework/renderers.py | 11 | 
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):  | 
