title: differences between ModelSerializer.update() and ModelViewSet.update()
body: <p>I found both <code>ModelSerializer</code> and <code>ModelViewSet</code> have <code>update()</code> method, and I think both are almost same. Is that correct ?<br><br> </p>
  
  <pre><code>from rest_framework import serializers
  from rest_framework import viewsets
  
  
  class FooSerializer(serializers.ModelSerializer):
      class Meta:
          model = Foo
          fields = '__all__'
  
      def update(self, instance, validated_data):
          # update of model instances
          instance.save()
          return instance
  
  
  class FooModelAPI(viewsets.ModelViewSet):
      serializer_class = MySerializer
      queryset = my_queryset
  
      def update(self, request, *args, **kwargs):
          # updateds model instances and save
          return Response("OK")
  </code></pre>
  
  <p>In the above snippet, Can I use either ModelSerializer or ModelViewSet without another for updating model instance ?</p>