1๐
โ
You would use get_serializer_class to switch on the request type for what serializer you want to use.
Example code:
from rest_framework import viewsets
class MyViewSet(viewsets.ModelViewSet):
queryset = MyModel.objects.all()
def get_serializer_class(self):
"""
:return: serializer class based on the request type
"""
if self.action == 'retrieve':
return ps.MyModelDetailSerializer
elif self.action == 'list':
return ps.MyModelListSerializer
elif self.action == 'create':
return ps.MyModelCreateSerializer
else:
return ps.MyModelUpdateSerializer
๐คAaron Lelevier
Source:stackexchange.com