  #### Removal of pre/post save hooks. 
  
  The following method hooks no longer exist on the new, simplified, generic views: `pre_save`, `post_save`, `pre_delete`, `post_delete`.
  
  If you do need custom behavior, you might choose to instead override the `.save()` method on your serializer class. For example:
  
      def save(self, *args, **kwargs):
          instance = super(MySerializer).save(*args, **kwarg)
          send_email(instance.to_email, instance.message)
  		return instance
 
</s> remove The following method hooks no longer exist on the new, simplified, generic views: `pre_save`, `post_save`, `pre_delete`, `post_delete`.
 </s> add The `pre_save` and `post_save` hooks no longer exist, but are replaced with `perform_create(self, serializer)` and `perform_update(self, serializer)`. </s> remove #### Removal of pre/post save hooks. 
 </s> add #### Changes to pre/post save hooks.  </s> remove     def save(self, *args, **kwargs):
        instance = super(MySerializer).save(*args, **kwarg)
 </s> add For example:

    def perform_create(self, serializer):
        # Include the owner attribute directly, rather than from request data.
        instance = serializer.save(owner=self.request.user)
        # Perform a custom post-save action. </s> remove 		return instance
 </s> add  </s> remove Alternatively write your view logic exlpicitly, or tie your pre/post save behavior into the model class or model manager.
 </s> add The `pre_delete` and `post_delete` hooks no longer exist, and are replaced with `.perform_destroy(self, instance)`, which should delete the instance and perform any custom actions.

    def perform_destroy(self, instance):
        # Perform a custom pre-delete action.
        send_deletion_alert(user=instance.created_by, deleted=instance)
        # Delete the object instance.
        instance.delete()
These method should save the object instance by calling `serializer.save()`, adding in any explicit additional arguments as required. They may also perform any custom pre-save or post-save behavior.
  #### Removal of pre/post save hooks. 
  
  The following method hooks no longer exist on the new, simplified, generic views: `pre_save`, `post_save`, `pre_delete`, `post_delete`.
  
These method should save the object instance by calling `serializer.save()`, adding in any explicit additional arguments as required. They may also perform any custom pre-save or post-save behavior.
  
      def save(self, *args, **kwargs):
          instance = super(MySerializer).save(*args, **kwarg)
          send_email(instance.to_email, instance.message)
  		return instance
keep keep keep keep replace keep keep keep keep keep
 Tweak pre/post save hooks. Return instance in .update(). 
docs/topics/3.0-announcement.md