From 964fbc2bd21e7ed40e3a01d19d31beeb2c8be769 Mon Sep 17 00:00:00 2001 From: David Avsajanishvili Date: Mon, 3 Jun 2013 13:42:19 +0400 Subject: [PATCH] Change status code to 422 (UNPROCESSABLE ENTITY) on validation error --- rest_framework/mixins.py | 4 ++-- rest_framework/status.py | 1 + 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/rest_framework/mixins.py b/rest_framework/mixins.py index f11def6d4..e41fe1daa 100644 --- a/rest_framework/mixins.py +++ b/rest_framework/mixins.py @@ -55,7 +55,7 @@ class CreateModelMixin(object): return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers) - return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + return Response(serializer.errors, status=status.HTTP_422_UNPROCESSABLE_ENTITY) def get_success_headers(self, data): try: @@ -132,7 +132,7 @@ class UpdateModelMixin(object): self.post_save(self.object, created=created) return Response(serializer.data, status=success_status_code) - return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) + return Response(serializer.errors, status=status.HTTP_422_UNPROCESSABLE_ENTITY) def partial_update(self, request, *args, **kwargs): kwargs['partial'] = True diff --git a/rest_framework/status.py b/rest_framework/status.py index b9f249f9f..9f47539e9 100644 --- a/rest_framework/status.py +++ b/rest_framework/status.py @@ -41,6 +41,7 @@ HTTP_414_REQUEST_URI_TOO_LONG = 414 HTTP_415_UNSUPPORTED_MEDIA_TYPE = 415 HTTP_416_REQUESTED_RANGE_NOT_SATISFIABLE = 416 HTTP_417_EXPECTATION_FAILED = 417 +HTTP_422_UNPROCESSABLE_ENTITY = 422 HTTP_428_PRECONDITION_REQUIRED = 428 HTTP_429_TOO_MANY_REQUESTS = 429 HTTP_431_REQUEST_HEADER_FIELDS_TOO_LARGE = 431