diff options
| author | Marko Tibold | 2012-11-15 22:48:22 +0100 |
|---|---|---|
| committer | Marko Tibold | 2012-11-15 22:48:22 +0100 |
| commit | 403886b79b9bf5790ee6f07d6ca915cff5b3035a (patch) | |
| tree | 987db12d60d8dbf56d8f23ff694d7208df6e3184 /rest_framework/mixins.py | |
| parent | 69a01d71256b9923aac1b8d1b91063068ecfebf7 (diff) | |
| parent | 3b258d69c92e9d9293f7c5d1690f0ca434e677e3 (diff) | |
| download | django-rest-framework-403886b79b9bf5790ee6f07d6ca915cff5b3035a.tar.bz2 | |
Merge commit '3b258d69c92e9d9293f7c5d1690f0ca434e677e3' into file_and_image_fields
Diffstat (limited to 'rest_framework/mixins.py')
| -rw-r--r-- | rest_framework/mixins.py | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/rest_framework/mixins.py b/rest_framework/mixins.py index 991f4c50..fbaaa96d 100644 --- a/rest_framework/mixins.py +++ b/rest_framework/mixins.py @@ -19,9 +19,16 @@ class CreateModelMixin(object): if serializer.is_valid(): self.pre_save(serializer.object) self.object = serializer.save() - return Response(serializer.data, status=status.HTTP_201_CREATED) + headers = self.get_success_headers(serializer.data) + return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST) - + + def get_success_headers(self, data): + if 'url' in data: + return {'Location': data.get('url')} + else: + return {} + def pre_save(self, obj): pass |
