Встречается на собеседованиях • сегодня
Что такое ленивые запросы в Django
Ленивые (lazy) запросы в Django — это отложенное выполнение QuerySet до момента, когда данные реально понадобятся. QuerySet не выполняет запрос к БД, пока не будет вызвана операция, требующая данных (например, итерация, срез, вызов list() или len()).
Преимущества:
- Оптимизация — можно строить сложные цепочки фильтров без лишних запросов
- Гибкость — можно динамически модифицировать запрос до его выполнения
Пример:
python
# Запрос не выполнен
users = User.objects.filter(is_active=True)
# Добавляем условие — запрос всё ещё не выполнен
active_admins = users.filter(is_admin=True)
# Только здесь произойдёт реальный запрос к БД
for user in active_admins:
print(user.username)Важно: некоторые операции (например, count(), exists()) выполняют запрос немедленно.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы