diff options
| author | Tom Christie | 2011-05-10 10:49:28 +0100 | 
|---|---|---|
| committer | Tom Christie | 2011-05-10 10:49:28 +0100 | 
| commit | 8f58ee489d34b200acfc2666816eb32e47c8cef5 (patch) | |
| tree | e1c4a273b46abd9ad7c74d6837108d31a7b76d9c /djangorestframework/views.py | |
| parent | d373b3a067796b8e181be9368fa24e89c572c45e (diff) | |
| download | django-rest-framework-8f58ee489d34b200acfc2666816eb32e47c8cef5.tar.bz2 | |
Getting the API into shape
Diffstat (limited to 'djangorestframework/views.py')
| -rw-r--r-- | djangorestframework/views.py | 22 | 
1 files changed, 13 insertions, 9 deletions
diff --git a/djangorestframework/views.py b/djangorestframework/views.py index dd30a092..02251885 100644 --- a/djangorestframework/views.py +++ b/djangorestframework/views.py @@ -7,11 +7,11 @@ from djangorestframework.mixins import *  from djangorestframework import resource, renderers, parsers, authentication, permissions, validators, status -__all__ = ['BaseView', +__all__ = ('BaseView',             'ModelView',             'InstanceModelView',             'ListOrModelView', -           'ListOrCreateModelView'] +           'ListOrCreateModelView') @@ -32,14 +32,14 @@ class BaseView(RequestMixin, ResponseMixin, AuthMixin, View):      # List of parsers the resource can parse the request with.      parsers = ( parsers.JSONParser,                  parsers.FormParser, -                parsers.MultipartParser ) +                parsers.MultiPartParser )      # List of validators to validate, cleanup and normalize the request content          validators = ( validators.FormValidator, )      # List of all authenticating methods to attempt. -    authentication = ( authentication.UserLoggedInAuthenticator, -                       authentication.BasicAuthenticator ) +    authentication = ( authentication.UserLoggedInAuthenticaton, +                       authentication.BasicAuthenticaton )      # List of all permissions that must be checked.      permissions = ( permissions.FullAnonAccess, ) @@ -92,7 +92,7 @@ class BaseView(RequestMixin, ResponseMixin, AuthMixin, View):              self.perform_form_overloading()              # Authenticate and check request is has the relevant permissions -            self.check_permissions() +            self._check_permissions()              # Get the appropriate handler method              if self.method.lower() in self.http_method_names: @@ -112,9 +112,12 @@ class BaseView(RequestMixin, ResponseMixin, AuthMixin, View):              # Pre-serialize filtering (eg filter complex objects into natively serializable types)              response.cleaned_content = self.resource.object_to_serializable(response.raw_content) - +              except ErrorResponse, exc:              response = exc.response +        except: +            import traceback +            traceback.print_exc()          # Always add these headers.          # @@ -124,6 +127,7 @@ class BaseView(RequestMixin, ResponseMixin, AuthMixin, View):          response.headers['Vary'] = 'Authenticate, Accept'          return self.render(response) +      class ModelView(BaseView): @@ -134,11 +138,11 @@ class InstanceModelView(ReadModelMixin, UpdateModelMixin, DeleteModelMixin, Mode      """A view which provides default operations for read/update/delete against a model instance."""      pass -class ListModelResource(ListModelMixin, ModelView): +class ListModelView(ListModelMixin, ModelView):      """A view which provides default operations for list, against a model in the database."""      pass -class ListOrCreateModelResource(ListModelMixin, CreateModelMixin, ModelView): +class ListOrCreateModelView(ListModelMixin, CreateModelMixin, ModelView):      """A view which provides default operations for list and create, against a model in the database."""      pass  | 
