Встречается на собеседованиях • сегодня

Что такое Manager в Django

Django Manager — это интерфейс, через который выполняются запросы к базе данных. По умолчанию у каждой модели есть objects, который является экземпляром django.db.models.Manager.

Основные возможности:

  • Фильтрация (filter(), exclude())
  • Получение объектов (get(), all())
  • Агрегация (count(), aggregate())

Пример кастомного менеджера:

python
from django.db import models

class ActiveUserManager(models.Manager):
    def get_queryset(self):
        return super().get_queryset().filter(is_active=True)

class User(models.Model):
    name = models.CharField(max_length=100)
    is_active = models.BooleanField(default=True)
    
    objects = models.Manager()  # дефолтный
    active_users = ActiveUserManager()  # кастомный

Теперь можно использовать:

python
User.active_users.all()  # только активные пользователи
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы