📡 You're offline — showing cached content
New version available!
Quick Access
Tutorials Django Framework Django Custom Managers

Django Custom Managers

5 min read
Add reusable QuerySet methods via custom Manager classes: published(), popular(), by_author().

Custom Model Managers

class PublishedManager(models.Manager):
    def get_queryset(self):
        return super().get_queryset().filter(is_draft=False, published_at__lte=timezone.now())

class Post(models.Model):
    objects   = models.Manager()   # default
    published = PublishedManager() # custom

Post.published.all()              # all published posts