title: How to handle per object permission in Django nowadays?
body: <p>I was about to use <a href="https://github.com/django-guardian/django-guardian" rel="noreferrer">django-guardian</a> until I came across the following in the official documentation:</p>
  
  <p><a href="https://docs.djangoproject.com/en/stable/topics/auth/customizing/#handling-authorization-in-custom-backends" rel="noreferrer">https://docs.djangoproject.com/en/stable/topics/auth/customizing/#handling-authorization-in-custom-backends</a></p>
  
  <blockquote>
    <p>Permissions can be set not only per type of object, but also per specific object instance. By using the has_add_permission(), has_change_permission() and has_delete_permission() methods provided by the ModelAdmin class, it is possible to customize permissions for different object instances of the same type.</p>
  </blockquote>
  
  <p>Does that mean django-guardian is no longer needed with newer versions of Django?</p>
  
  <p>Please clarify.</p>