From c238a2cc21d073fadf319e5f5e8822f924f972f2 Mon Sep 17 00:00:00 2001 From: emilio Date: Wed, 29 Oct 2014 19:39:02 +0100 Subject: [PATCH] multiple serializers viewset --- rest_framework/viewsets.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/rest_framework/viewsets.py b/rest_framework/viewsets.py index 84b4bd8dd..0e908cefe 100644 --- a/rest_framework/viewsets.py +++ b/rest_framework/viewsets.py @@ -138,3 +138,16 @@ class ModelViewSet(mixins.CreateModelMixin, `partial_update()`, `destroy()` and `list()` actions. """ pass + +class MultiSerializerViewSet(ModelViewSet): + """ + A ModelViewSet which allows to use different serializers according to + the currently taken action. + """ + serializers = { + 'default': None, + } + + def get_serializer_class(self): + return self.serializers.get(self.action, + self.serializers['default'])