🐍 Полезный Django-совет
Если вы работаете с Django ORM и выбираете связанные объекты,
не делайте лишние запросы к базе.
Частая ошибка:
Если у вас 100 постов — Django сделает 101 SQL-запрос
(1 для постов + 100 для авторов).
Это называется N+1 проблема.
Исправляется одной строкой:
Теперь Django сделает один JOIN-запрос,
и все авторы загрузятся сразу.
Когда использовать:
select_related() - для ForeignKey и OneToOne
prefetch_related() - для ManyToMany и reverse relations
posts = Post.objects.prefetch_related("tags")
💡 Правило:
если вы обращаетесь к связанным объектам в цикле - почти всегда нужен select_related или prefetch_related.
Это может ускорить страницу в десятки раз.
#django #python
Если вы работаете с Django ORM и выбираете связанные объекты,
не делайте лишние запросы к базе.
Частая ошибка:
for post in Post.objects.all():
print(post.author.name)
Если у вас 100 постов — Django сделает 101 SQL-запрос
(1 для постов + 100 для авторов).
Это называется N+1 проблема.
Исправляется одной строкой:
posts = Post.objects.select_related("author")
for post in posts:
print(post.author.name)
Теперь Django сделает один JOIN-запрос,
и все авторы загрузятся сразу.
Когда использовать:
select_related() - для ForeignKey и OneToOne
prefetch_related() - для ManyToMany и reverse relations
posts = Post.objects.prefetch_related("tags")
💡 Правило:
если вы обращаетесь к связанным объектам в цикле - почти всегда нужен select_related или prefetch_related.
Это может ускорить страницу в десятки раз.
#django #python
Это инструмент, с которым можно автоматизировать задачи, писать скрипты, собирать проекты, работать с данными, делать ботов и использовать ИИ как ускоритель разработки.
Но есть проблема: большинство новичков учат Python кусками. Немного синтаксиса, пару задачек, немного теории - и потом ступор: «а что с этим делать дальше?»
Этот курс сделан иначе. Здесь упор на реальную практику: вы не просто смотрите уроки, а постепенно учитесь писать код, разбирать ошибки, собирать рабочие решения и понимать, как Python применяется в нормальных задачах.
Что внутри:
- Python с нуля понятным языком
- практика вместо бесконечной сухой теории
- реальные задачи и проекты
- автоматизация рутины
- работа с файлами, данными и API
- понятная логика программирования
- современный подход к разработке с ИИ
- отдельный акцент на вайбкодинг
Вайбкодинг -это умение правильно ставить задачу, проверять код, понимать результат и ускорять работу без слепого копирования. В 2026 году это уже не бонус, а нормальный навык разработчика.
Сегодня скидка 60 процентов: https://stepik.org/course/288218/info
Please open Telegram to view this post
VIEW IN TELEGRAM
🐍 Python Roadmap 2026: наконец-то полноценная актуальная карта изучения Python, а не список ссылок «разберись сам»
На GitHub выложили большой русскоязычный роадмап по Python на 2026 год - от первых скриптов до уровня Middle+/Senior.
Маршрут собран под современный Python:
- Python 3.13+
- free-threaded mode без GIL
- JIT
- uv вместо боли с pip/venv/poetry
- ruff, pyright, pytest, hypothesis
- async-first подход
- типизация
- CPython внутри
- web, базы, ML/AI, DevOps и архитектура
В роадмапе есть нормальная последовательность: сначала окружение и база, потом идиомы, ООП, типы, стандартная библиотека, асинхронность, тестирование, внутренности CPython, web, базы данных, AI-направление, продакшн и архитектура.
Отдельный плюс - практический формат. На каждом этапе есть задачи, чеклисты, примеры кода и бесплатные ресурсы. То есть это не мотивационная простыня, а маршрут, по которому реально можно идти несколько месяцев и видеть прогресс.
Для новичков - понятный путь без хаоса.
Для джунов - способ закрыть дыры.
Для тех, кто уже пишет на Python - хороший чеклист, чтобы понять, где ты всё ещё плаваешь.
Python в 2026 году - это tooling, типы, async, инфраструктура, AI и продакшн-дисциплина. И этот роадмап как раз про такой Python.
https://github.com/justxor/pythonroamap2026
На GitHub выложили большой русскоязычный роадмап по Python на 2026 год - от первых скриптов до уровня Middle+/Senior.
Маршрут собран под современный Python:
- Python 3.13+
- free-threaded mode без GIL
- JIT
- uv вместо боли с pip/venv/poetry
- ruff, pyright, pytest, hypothesis
- async-first подход
- типизация
- CPython внутри
- web, базы, ML/AI, DevOps и архитектура
В роадмапе есть нормальная последовательность: сначала окружение и база, потом идиомы, ООП, типы, стандартная библиотека, асинхронность, тестирование, внутренности CPython, web, базы данных, AI-направление, продакшн и архитектура.
Отдельный плюс - практический формат. На каждом этапе есть задачи, чеклисты, примеры кода и бесплатные ресурсы. То есть это не мотивационная простыня, а маршрут, по которому реально можно идти несколько месяцев и видеть прогресс.
Для новичков - понятный путь без хаоса.
Для джунов - способ закрыть дыры.
Для тех, кто уже пишет на Python - хороший чеклист, чтобы понять, где ты всё ещё плаваешь.
Python в 2026 году - это tooling, типы, async, инфраструктура, AI и продакшн-дисциплина. И этот роадмап как раз про такой Python.
https://github.com/justxor/pythonroamap2026
Автор показал, как сделать лёгкую платформу для хостинга статических сайтов без фреймворков и тяжёлой инфраструктуры. Только стандартная библиотека Python.
Идея простая:
•
http.server отдаёт статические файлы• небольшой Python-код добавляет логику деплоя
• автоматизация обновляет сайт после изменений
• HTTPS можно прикрутить без отдельного большого стека
Главный кайф не в том, чтобы «убить GitHub Pages», а в том, чтобы понять механику под капотом.
Статический хостинг - это не магия. Это файловая раздача, маршруты, деплой, сертификаты и немного аккуратной автоматизации.
Хороший материал для тех, кто хочет лучше понимать web-инфраструктуру, а не просто нажимать кнопку Deploy.
https://blog.klemek.fr/articles/2026-06-14/
Please open Telegram to view this post
VIEW IN TELEGRAM
Вышел Django 6.0.
Релиз получился не про косметику, а про вещи, которые давно просились в core.
Главное - встроенная поддержка Content Security Policy.
Теперь CSP можно настраивать прямо в Django через middleware, context processor и настройки
Второе важное изменение - template partials.
В шаблонах появились
Третье - встроенный Tasks framework.
Django теперь умеет описывать и ставить фоновые задачи в очередь. Но важно: воркер в комплект не входит. Запуск задач всё равно остаётся за внешним процессом или инфраструктурой.
Ещё из полезного:
• поддержка Python 3.12, 3.13 и 3.14
• современный Python email API
•
•
•
•
Перед обновлением стоит внимательно пройтись по breaking changes: Python ниже 3.12 больше не поддерживается, MariaDB 10.5 тоже выпала, а часть email API и ORM-кастомизаций может потребовать правок.
Документация:
https://docs.djangoproject.com/en/6.0/releases/6.0/
Релиз получился не про косметику, а про вещи, которые давно просились в core.
Главное - встроенная поддержка Content Security Policy.
Теперь CSP можно настраивать прямо в Django через middleware, context processor и настройки
SECURE_CSP / SECURE_CSP_REPORT_ONLY. Это упрощает защиту от XSS и content injection без отдельного пакета.Второе важное изменение - template partials.
В шаблонах появились
{% partialdef %} и {% partial %}. Можно описывать небольшие переиспользуемые фрагменты прямо внутри template-файла, а не дробить всё на отдельные include.Третье - встроенный Tasks framework.
Django теперь умеет описывать и ставить фоновые задачи в очередь. Но важно: воркер в комплект не входит. Запуск задач всё равно остаётся за внешним процессом или инфраструктурой.
Ещё из полезного:
• поддержка Python 3.12, 3.13 и 3.14
• современный Python email API
•
AsyncPaginator•
StringAgg теперь не только для PostgreSQL•
forloop.length в шаблонах•
DEFAULT_AUTO_FIELD теперь по умолчанию BigAutoFieldПеред обновлением стоит внимательно пройтись по breaking changes: Python ниже 3.12 больше не поддерживается, MariaDB 10.5 тоже выпала, а часть email API и ORM-кастомизаций может потребовать правок.
Документация:
https://docs.djangoproject.com/en/6.0/releases/6.0/
Wagtail как Django admin на стероидах
Хороший разбор для Django-разработчиков: Wagtail можно использовать не только как CMS, но и как более удобную админку для обычных Django-моделей.
Смысл простой: Django admin быстро даёт UI вокруг моделей, но кастомизация часто превращается в боль. Wagtail даёт более современный интерфейс, нормальную работу с полями, группировку через panels, роли, permissions, rich text, media library, versioning и редакторские workflow.
При этом не нужно переписывать проект под CMS-логику. Wagtail ставится как обычный Django-пакет, добавляется в
Самый практичный случай использования : взять существующий
Для внутренних тулзов, CRM, backoffice и контентных разделов это может быть намного приятнее, чем бесконечно допиливать стандартный Django admin.
https://timonweb.com/wagtail/wagtail-as-django-admin-on-steroids/
Хороший разбор для Django-разработчиков: Wagtail можно использовать не только как CMS, но и как более удобную админку для обычных Django-моделей.
Смысл простой: Django admin быстро даёт UI вокруг моделей, но кастомизация часто превращается в боль. Wagtail даёт более современный интерфейс, нормальную работу с полями, группировку через panels, роли, permissions, rich text, media library, versioning и редакторские workflow.
При этом не нужно переписывать проект под CMS-логику. Wagtail ставится как обычный Django-пакет, добавляется в
INSTALLED_APPS, подключается в urls.py, а бизнес-логика, views, forms и templates остаются обычными Django.Самый практичный случай использования : взять существующий
admin.py, перенести модели в Wagtail snippets и постепенно заменить старую админку там, где нужен интерфейс, который не стыдно показать клиенту.Для внутренних тулзов, CRM, backoffice и контентных разделов это может быть намного приятнее, чем бесконечно допиливать стандартный Django admin.
https://timonweb.com/wagtail/wagtail-as-django-admin-on-steroids/