'ViewSet' object has no attribute 'action' during Schema generation · Issue #4398 · encode/django-rest-framework (original) (raw)
Steps to reproduce
Create a ModelViewSet
that uses get_serializer_class()
:
class MyViewSet(viewsets.ModelViewSet): queryset = Person.objects.all()
def get_serializer_class(self):
if self.action == 'list':
return serializers.SerializerB
return serializers.SerializerA
Expected behavior
Schema should be generated in a view that uses the CoreJSONRenderer
.
Actual behavior
An AttributeError
is thrown: 'MyViewSet' object has no attribute 'action'
.
This is related to #4373 and #4278. If this isn't a bug, I may be missing something...the docs do have this method as the suggested way to dynamically change serializers.
Using djangorestframework==3.4.4 and python2.7.