title: Django : Does it make sense to override save method in a mixin?
body: <p>I ask myself if it make sense to override save method in a mixin.</p>
  
  <p>In my project I have, for good reasons, to override the save method in several models.
  At first, I have to create a custom model class which inherit from <code>models.Model</code>.
  However semantically, what I am doing is giving a role to a class (rather than defining an object in its own right), that's why I think it's better to write a mixin.
  An other reason is because we may use multiple inheritance in near future.
  On the over hand, this line in overriden save method :</p>
  
  <pre><code>super(MyMixin, self).save(*args, **kwargs)
  </code></pre>
  
  <p>does not make sens as it can only be used with a django.db.models.Model class.</p>
  
  <pre><code>class MyMixin(object):
  
      def save(self, *args, **kwargs):
          ...
          super(MyMixin, self).save(*args, **kwargs)
          ...
  </code></pre>
  
  <p>Could you help me decide the best choice ? (Mixin or custom model)</p>