aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--rest_framework/mixins.py20
1 files changed, 10 insertions, 10 deletions
diff --git a/rest_framework/mixins.py b/rest_framework/mixins.py
index f3cd5868..f11def6d 100644
--- a/rest_framework/mixins.py
+++ b/rest_framework/mixins.py
@@ -110,16 +110,6 @@ class UpdateModelMixin(object):
"""
Update a model instance.
"""
- def get_object_or_none(self):
- try:
- return self.get_object()
- except Http404:
- # If this is a PUT-as-create operation, we need to ensure that
- # we have relevant permissions, as if this was a POST request.
- # This will either raise a PermissionDenied exception,
- # or simply return None
- self.check_permissions(clone_request(self.request, 'POST'))
-
def update(self, request, *args, **kwargs):
partial = kwargs.pop('partial', False)
self.object = self.get_object_or_none()
@@ -148,6 +138,16 @@ class UpdateModelMixin(object):
kwargs['partial'] = True
return self.update(request, *args, **kwargs)
+ def get_object_or_none(self):
+ try:
+ return self.get_object()
+ except Http404:
+ # If this is a PUT-as-create operation, we need to ensure that
+ # we have relevant permissions, as if this was a POST request.
+ # This will either raise a PermissionDenied exception,
+ # or simply return None
+ self.check_permissions(clone_request(self.request, 'POST'))
+
def pre_save(self, obj):
"""
Set any attributes on the object that are implicit in the request.