title: How to auto fill SlugField instead of overriding save()?
body: <p><strong>Hello Awesome People</strong></p>
  
  <p>I wonder if there is a way to generate slug, rather than overriding the <code>save()</code> methods of my models.<br>
  Here's how I used to do:</p>
  
  <pre><code>def save(self, *args, **kwargs):
      if self.pk is None:
          self.slug = create_slug(self)
      super(ModelName, self).save(*args, **kwargs)
  </code></pre>
  
  <p><code>create_slug</code> is a function that generates the slug with <code>slugify</code></p>
  
  <pre><code>def create_slug(instance,new_slug=None,field="name"):
      ''' long stuff to ensure the slug is unique '''
      return slug
  </code></pre>
  
  <p>As django can do in Django Admin by automatically filling the slug field. Possible that we can simply add
  an additional argument <code>models.SlugField(field='name')</code>. by adding this argument, django will make sure to take the value of <code>field = name</code> before saving to generate the slug without always overriding the <code>save()</code> method by copy/paste a lot of code to generate a slug for each model that We have.</p>
  
  <p>I'm a little tired of copying this for all models, any hint will help!</p>
  
  <p>Thank you in advance!</p>