TGViewer
Django Python Django Python @django_pythonl · 6.62K subscribers
Post #284 3.3K
🐍 Совет для Django-разработчиков: избегайте бесполезного использования .all()

Когда вы пишете запрос в Django ORM, важно понимать, как работают QuerySet. Например, если у вас есть такой код:

Digger.objects.all().filter(height_cm__gt=200)


Использование .all() здесь лишнее. Эквивалентный код без него будет выглядеть так:

Digger.objects.filter(height_cm__gt=200)


Почему? Дело в том, что менеджер Digger.objects уже ссылается на все объекты модели Digger. Вызов .filter() создаёт QuerySet с применённым фильтром. Добавление .all() лишь создает лишнюю копию QuerySet между этими шагами.

О том, когда применять .all() всё-таки нужно, читайте в статье 👈
More from @django_pythonl
  1. Sep 13, 2026🔥 Django Q() objects — один из самых полезных инструментов ORM, который многие используют…
  2. Sep 11, 2026🔥 Хак в Django: Meta.indexes можно использовать для собственных миграций Оказывается, mod…
  3. Aug 31, 2026Нечёткий поиск в Django + PostgreSQL можно сделать намного умнее обычного icontains. В Cak…
  4. Aug 14, 2026🐍 Django-разработчикам: `DEBUG=True` в проде опаснее, чем кажется. Это не просто красивые…
  5. Aug 8, 2026🚀 Django 6.1 вышел: меньше магии, больше контроля Новая версия Django приносит улучшения…
  6. Jul 22, 2026⚡️ django-orjson ускоряет работу Django с JSON Adam Johnson выпустил библиотеку django-orj…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →