title: Dynamically modifying serializer fields in Django Rest Framework
body: <p>I'm trying to use the Advanced serializer usage described in the django rest framework documentation. <a href="http://django-rest-framework.org/api-guide/serializers.html#advanced-serializer-usage" rel="noreferrer">http://django-rest-framework.org/api-guide/serializers.html#advanced-serializer-usage</a> to dynamically modifying serializer field</p>
  
  <p>Here is my serializer class:</p>
  
  <pre><code>class MovieSerializer(serializers.ModelSerializer):
      moviework_work = MovieWorkSerializer(many=True) 
  
      def __init__(self, *args, **kwargs):
          # Don't pass the 'fields' arg up to the superclass
          dropfields = kwargs.pop('dropfields', None)
  
          # Instantiate the superclass normally
          super(MovieSerializer, self).__init__(*args, **kwargs)
  
          if dropfields:
              # Drop fields specified in the `fields` argument.
              banished = set(dropfields)
              for field_name in banished:
                  self.fields.pop(field_name)
      class Meta:
          model = Movie
          fields = ('field1','field2','moviework_work')
  </code></pre>
  
  <p>Here is my viewset</p>
  
  <pre><code>class MovieFromInterpreterViewSet(viewsets.ModelViewSet):
      queryset = Movie.objects.all()
      serializer_class = MovieSerializer(dropfields=('moviework_work',))
  </code></pre>
  
  <p>I get this error:</p>
  
  <pre><code>TypeError: 'MovieSerializer' object is not callable
  </code></pre>