title: Django model validation on related fields
body: <p>When is the appropriate time to do validation on related fields in a model?</p>
  
  <p>For example if I have a class Video that has a <code>ManyToMany</code> relationship with a class Playlist, when the Video is changed to 'private', it should be removed from all Playlists. </p>
  
  <p>Doing this in the model's <code>clean()</code> method seems dangerous - since the model might fail validation and not save, but the Playlist references will have been deleted.</p>
  
  <p>Is doing it in a <code>post_save</code> or <code>pre_save</code> signal the right way to go?</p>