ru
Feedback
Django Python

Django Python

Открыть в Telegram
6 612
Подписчики
-524 часа
-97 дней
-3830 день

Загрузка данных...

Привлечение подписчиков
август '26
август '26
+47
в 0 каналах
июль '26
+53
в 0 каналах
Get PRO
июнь '26
+30
в 0 каналах
Get PRO
май '26
+38
в 0 каналах
Get PRO
апрель '26
+41
в 0 каналах
Get PRO
март '26
+53
в 0 каналах
Get PRO
февраль '26
+56
в 0 каналах
Get PRO
январь '26
+54
в 0 каналах
Get PRO
декабрь '25
+59
в 0 каналах
Get PRO
ноябрь '25
+127
в 1 каналах
Get PRO
октябрь '25
+98
в 0 каналах
Get PRO
сентябрь '25
+122
в 1 каналах
Get PRO
август '25
+86
в 0 каналах
Get PRO
июль '25
+356
в 0 каналах
Get PRO
июнь '25
+108
в 0 каналах
Get PRO
май '25
+89
в 0 каналах
Get PRO
апрель '25
+124
в 0 каналах
Get PRO
март '25
+107
в 0 каналах
Get PRO
февраль '25
+186
в 0 каналах
Get PRO
январь '25
+233
в 1 каналах
Get PRO
декабрь '24
+274
в 1 каналах
Get PRO
ноябрь '24
+243
в 0 каналах
Get PRO
октябрь '24
+371
в 0 каналах
Get PRO
сентябрь '24
+284
в 0 каналах
Get PRO
август '24
+318
в 0 каналах
Get PRO
июль '24
+375
в 0 каналах
Get PRO
июнь '24
+417
в 1 каналах
Get PRO
май '24
+293
в 0 каналах
Get PRO
апрель '24
+276
в 1 каналах
Get PRO
март '24
+366
в 0 каналах
Get PRO
февраль '24
+609
в 0 каналах
Get PRO
январь '24
+372
в 0 каналах
Get PRO
декабрь '23
+267
в 0 каналах
Get PRO
ноябрь '23
+184
в 0 каналах
Get PRO
октябрь '23
+182
в 0 каналах
Get PRO
сентябрь '23
+472
в 0 каналах
Get PRO
август '23
+530
в 0 каналах
Get PRO
июль '23
+209
в 0 каналах
Get PRO
июнь '23
+291
в 0 каналах
Get PRO
май '23
+75
в 0 каналах
Get PRO
апрель '23
+61
в 0 каналах
Get PRO
март '23
+89
в 0 каналах
Get PRO
февраль '23
+59
в 0 каналах
Get PRO
январь '23
+118
в 0 каналах
Get PRO
декабрь '22
+92
в 0 каналах
Get PRO
ноябрь '22
+162
в 0 каналах
Get PRO
октябрь '22
+285
в 0 каналах
Get PRO
сентябрь '22
+292
в 0 каналах
Get PRO
август '22
+95
в 0 каналах
Get PRO
июль '22
+103
в 0 каналах
Get PRO
июнь '22
+114
в 0 каналах
Get PRO
май '22
+167
в 0 каналах
Get PRO
апрель '22
+145
в 0 каналах
Get PRO
март '22
+185
в 0 каналах
Get PRO
февраль '22
+113
в 0 каналах
Get PRO
январь '22
+83
в 0 каналах
Get PRO
декабрь '21
+48
в 0 каналах
Get PRO
ноябрь '21
+612
в 0 каналах
Get PRO
октябрь '21
+36
в 0 каналах
Get PRO
сентябрь '21
+37
в 0 каналах
Get PRO
август '21
+56
в 0 каналах
Get PRO
июль '21
+43
в 0 каналах
Get PRO
июнь '21
+30
в 0 каналах
Get PRO
май '21
+15
в 0 каналах
Get PRO
апрель '21
+38
в 0 каналах
Get PRO
март '21
+22
в 0 каналах
Get PRO
февраль '21
+19
в 0 каналах
Get PRO
январь '21
+88
в 0 каналах
Get PRO
декабрь '20
+1 028
в 0 каналах
Дата
Привлечение подписчиков
Упоминания
Каналы
26 августа0
25 августа0
24 августа+1
23 августа+1
22 августа+8
21 августа0
20 августа+5
19 августа+1
18 августа0
17 августа+2
16 августа+1
15 августа+1
14 августа+2
13 августа+3
12 августа0
11 августа+3
10 августа+1
09 августа+3
08 августа0
07 августа+2
06 августа+4
05 августа0
04 августа+4
03 августа+1
02 августа+3
01 августа+1
Посты канала
🐍 Django-разработчикам: `DEBUG=True` в проде опаснее, чем кажется. Это не просто красивые страницы ошибок. При включённом DE
🐍 Django-разработчикам: `DEBUG=True` в проде опаснее, чем кажется. Это не просто красивые страницы ошибок. При включённом DEBUG приложение может раскрывать stack trace, настройки, пути файлов, middleware, URL-паттерны и другие детали окружения. Главная рекомендация - fail closed:

DEBUG = False
То есть по умолчанию DEBUG всегда выключен, а включается только локально. Даже staging, QA и preview-среды, доступные из интернета, лучше запускать с DEBUG=False. Отдельная ловушка - переменные окружения:

DEBUG = os.environ.get("DEBUG", "False") != "False"
Здесь DEBUG=false или DEBUG=0 могут неожиданно превратиться в True. Лучше явно парсить boolean или использовать django-environ. Мелкая настройка, которая однажды может спасти production от очень неприятной утечки. https://lincolnloop.com/blog/setting-djangos-debug-safely/ #Python #Django #Backend #Security #DevOps

2
🚀 Django 6.1 вышел: меньше магии, больше контроля Новая версия Django приносит улучшения для production-приложений и работы с базой данных. Главное новшество — новый подход к загрузке данных моделей. Теперь можно контролировать, когда Django делает дополнительные запросы: from django.db import models books = Book.objects.fetch_mode( models.FETCH_PEERS ) Это помогает бороться с проблемой N+1 запросов и лучше контролировать нагрузку на БД. Новые режимы: - FETCH_ONE — загружать данные только для текущего объекта; - FETCH_PEERS — догружать данные сразу для группы объектов; - RAISE — запрещать неожиданные запросы и ловить проблемы заранее. Также в Django 6.1: - поддержка Python 3.12, 3.13 и 3.14; - PostgreSQL 15+; - MySQL 8.4+; - MariaDB 10.11+; - улучшения cache и внутренних механизмов. Главная идея релиза: Django всё меньше скрывает стоимость операций и даёт разработчикам больше контроля над тем, что происходит под капотом. Подробнее: https://www.djangoproject.com/weblog/2026/aug/05/django-61-released/
626
3
⚡️ django-orjson ускоряет работу Django с JSON Adam Johnson выпустил библиотеку django-orjson с готовыми заменами стандартных JSON-компонентов Django и Django REST Framework. В основе лежит написанный на Rust orjson: - сериализация до 10 раз быстрее; - десериализация примерно в 2 раза быстрее. Поддерживаются: - JsonResponse и тестовый клиент; - json_script; - сериализаторы, сессии и signing; - компоненты Django REST Framework. Пакет протестирован на поддерживаемых версиях Python и Django, заявлено 100% покрытие ветвей. Также обсуждается подключаемый JSON-бэкенд для самого Django. Тогда стандартный json можно будет заменить на orjson централизованно, без изменения импортов по всему проекту. https://adamj.eu/tech/2026/07/15/introducing-django-orjson/
923
4
Wagtail как Django admin на стероидах Хороший разбор для Django-разработчиков: Wagtail можно использовать не только как CMS,
Wagtail как Django admin на стероидах Хороший разбор для 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/
861
5
Вышел Django 6.0. Релиз получился не про косметику, а про вещи, которые давно просились в core. Главное - встроенная поддержк
Вышел Django 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/
942
6
🖥 GitHub Pages можно пересобрать почти на голом Python. Автор показал, как сделать лёгкую платформу для хостинга статических
🖥 GitHub Pages можно пересобрать почти на голом Python. Автор показал, как сделать лёгкую платформу для хостинга статических сайтов без фреймворков и тяжёлой инфраструктуры. Только стандартная библиотека Python. Идея простая: • http.server отдаёт статические файлы • небольшой Python-код добавляет логику деплоя • автоматизация обновляет сайт после изменений • HTTPS можно прикрутить без отдельного большого стека Главный кайф не в том, чтобы «убить GitHub Pages», а в том, чтобы понять механику под капотом. Статический хостинг - это не магия. Это файловая раздача, маршруты, деплой, сертификаты и немного аккуратной автоматизации. Хороший материал для тех, кто хочет лучше понимать web-инфраструктуру, а не просто нажимать кнопку Deploy. https://blog.klemek.fr/articles/2026-06-14/
829
7
🐍 Python Roadmap 2026: наконец-то полноценная актуальная карта изучения Python, а не список ссылок «разберись сам» На GitHub
🐍 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
894
8
🖥 Python в 2026 - уже не просто «первый язык программирования». Это инструмент, с которым можно автоматизировать задачи, пис
🖥 Python в 2026 - уже не просто «первый язык программирования». Это инструмент, с которым можно автоматизировать задачи, писать скрипты, собирать проекты, работать с данными, делать ботов и использовать ИИ как ускоритель разработки. Но есть проблема: большинство новичков учат Python кусками. Немного синтаксиса, пару задачек, немного теории - и потом ступор: «а что с этим делать дальше?» Этот курс сделан иначе. Здесь упор на реальную практику: вы не просто смотрите уроки, а постепенно учитесь писать код, разбирать ошибки, собирать рабочие решения и понимать, как Python применяется в нормальных задачах. Что внутри: - Python с нуля понятным языком - практика вместо бесконечной сухой теории - реальные задачи и проекты - автоматизация рутины - работа с файлами, данными и API - понятная логика программирования - современный подход к разработке с ИИ - отдельный акцент на вайбкодинг Вайбкодинг -это умение правильно ставить задачу, проверять код, понимать результат и ускорять работу без слепого копирования. В 2026 году это уже не бонус, а нормальный навык разработчика. Сегодня скидка 60 процентов: https://stepik.org/course/288218/info
749
9
⚡️ Вы слышали про Rust. Знаете, что он быстрый, безопасный и что за ним будущее. Осталось одно: сесть и выучить. Этот курс со
⚡️ Вы слышали про Rust. Знаете, что он быстрый, безопасный и что за ним будущее. Осталось одно: сесть и выучить. Этот курс со Stepik- кратчайший путь от «знаю что такое Rust» до «пишу на нём». 6 модулей, 50 уроков, 143 теста. Ownership, borrowing, traits, async, Tokio, Axum, макросы, WASM — всё разложено по полочкам и закреплено практикой. Никакого видео на 40 минут ради одной мысли. Подробный текст, много кода, реальные задачи после каждого урока. На выходе — портфолио из 10+ проектов: от CLI-утилит до REST API с базой данных. 48 часов действует скидка 55 процентов: stepik.org/course/269250
796
10
🐍 Полезный Django-совет Если вы работаете с 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
834
11
🖥 Большинство “парсеров” умирают через 2 дня. Ты научишься делать те, которые живут в проде. Это не про BeautifulSoup ради г
🖥 Большинство “парсеров” умирают через 2 дня. Ты научишься делать те, которые живут в проде. Это не про BeautifulSoup ради галочки. Это про системы сбора данных, которые: • не падают от мелких правок на сайте • собирают данные в разы быстрее • обновляют всё сами по расписанию • обходят ограничения и баны • выглядят как сервис, а не хаос из файлов Ты начнёшь видеть сайты не как страницы, а как источники данных, к которым можно подключиться. В итоге ты сможешь: • забирать данные для своих проектов • автоматизировать чужую рутину • делать инструменты для аналитики • брать коммерческие заказы на сбор данных Это навык, который напрямую превращается в деньги. Не “знаю Python”, а умею добывать данные из интернета профессионально. 🎁 48 часов скидка 50% на Stepik: https://stepik.org/a/269942/
736
12
✔️ Лови полезный Django-совет, который спасает продакшен чаще, чем кажется. Никогда не делай тяжёлую логику в Django views. Новички часто пихают всё прямо во view: - бизнес-логику - валидацию - расчёты - работу с БД - интеграции В итоге получается "божественная функция" на 200 строк, которую невозможно тестировать и поддерживать. Правильный подход — разделять слои: - View — только принимает запрос и отдаёт ответ - Services / use-cases — бизнес-логика - Models — работа с данными - Serializers / Forms — валидация Плохо: def create_order(request): user = request.user items = request.data['items'] total = 0 for item in items: product = Product.objects.get(id=item['id']) total += product.price * item['qty'] order = Order.objects.create(user=user, total=total) ... Лучше: # services/order_service.py def create_order(user, items): total = calculate_total(items) return Order.objects.create(user=user, total=total) # views.py def create_order_view(request): order = create_order(request.user, request.data['items']) return Response({"id": order.id}) Почему это важно: • проще тестировать • код переиспользуется • view не превращается в монстра • легче менять логику, не трогая API Django не заставляет делать так, но большие проекты без этого долго не живут.
1 061
13
🖥 Большинство “парсеров” умирают через 2 дня. Ты научишься делать те, которые живут в проде. Это не про BeautifulSoup ради г
🖥 Большинство “парсеров” умирают через 2 дня. Ты научишься делать те, которые живут в проде. Это не про BeautifulSoup ради галочки. Это про системы сбора данных, которые: • не падают от мелких правок на сайте • собирают данные в разы быстрее • обновляют всё сами по расписанию • обходят ограничения и баны • выглядят как сервис, а не хаос из файлов Ты начнёшь видеть сайты не как страницы, а как источники данных, к которым можно подключиться. В итоге ты сможешь: • забирать данные для своих проектов • автоматизировать чужую рутину • делать инструменты для аналитики • брать коммерческие заказы на сбор данных Это навык, который напрямую превращается в деньги. Не “знаю Python”, а умею добывать данные из интернета профессионально. 🎁 48 часов скидка 50% на Stepik: https://stepik.org/a/269942/
849
14
Идеальный старт для проекта Django: конфигурация окружения. Сохрани себе идеальный шаблон virtual environment и основных наст
Идеальный старт для проекта Django: конфигурация окружения. Сохрани себе идеальный шаблон virtual environment и основных настроек для каждого нового проекта Django. Это упростит процесс настройки окружения и позволит избежать распространенных ошибок. # Создание виртуального окружения python3 -m venv venv # Активация виртуального окружения source venv/bin/activate # Установка основных зависимостей pip install django djangorestframework psycopg2 # Создание файла requirements.txt pip freeze > requirements.txt # Инициализация нового проекта Django django-admin startproject myproject # Переход в директорию проекта cd myproject # Запуск сервера для проверки python manage.py runserver
937
15
Вышли первые выпуски IT-покера от K2 Cloud Турнир, где айтишники собирают идеальные билды из карт, интуиции и навыков. Вместо
Вышли первые выпуски IT-покера от K2 Cloud Турнир, где айтишники собирают идеальные билды из карт, интуиции и навыков. Вместо привычной колоды — технологии, сервисы и архитектурные решения. Идем смотреть
725
16
🚀 AgentCPM-Explore - первый open-source агент на 4B, который реально тащит GAIA и сложные реальные задачи OpenBMB выкатили A
🚀 AgentCPM-Explore - первый open-source агент на 4B, который реально тащит GAIA и сложные реальные задачи OpenBMB выкатили AgentCPM-Explore - модель всего на 4B параметров, но по агентным метрикам она выглядит как зверь. ✅ SOTA среди 4B агент-моделей По агентным бенчмаркам модель: - обгоняет всех на своём масштабе - превосходит часть 8B моделей - и даже конкурирует с некоторыми 30B+ и closed-source LLM 🧠 Deep Research как у “исследователя” Модель умеет: - длинные цепочки рассуждений (long-horizon reasoning) - 100+ ходов автономного диалога - проверять себя через несколько источников (cross-validation) - делать самокоррекцию как человек - динамически менять стратегию и использовать инструменты То есть это уже не “чатбот”, а мини-исследователь, который реально может вести задачу до конца. 🔓 Открыт не только модельный вес - открыт весь стек И это самое жирное: OpenBMB выкладывают не “голую модель”, а весь pipeline агентности: - AgentRL - асинхронный RL-фреймворк для обучения агентов - AgentDock - безопасная песочница инструментов (tool sandbox) - AgentToLeaP - платформа оценки tool-learning (в один клик) - полный датапайплайн и воспроизводимые training workflows Это полноценная open-source платформа для создания агентов, где можно реально учиться, экспериментировать и собирать своих автономных “ресёрчеров”. Кто уже тестил GAIA на своих агентах ? 🤗 Hugging Face: https://huggingface.co/openbmb/AgentCPM-Explore 🔗 GitHub: https://github.com/OpenBMB/AgentCPM
1 319
17
🖥 На Stepik вышел курс, который учит работать с Docker на реальных проектах. Владение Docker - навык, который отличает нович
🖥 На Stepik вышел курс, который учит работать с Docker на реальных проектах. Владение Docker - навык, который отличает новичка от профи, Сегодня почти всё разворачивается в контейнерах. Если ты не умеешь работать с Docker, ты медленнее, зависим от чужих настроек и постоянно ловишь баги «у меня локально работает». • как упаковывать проекты в контейнеры • как поднимать целые системы за минуты • как избегать типичных ошибок в продакшене • как делать стабильные и повторяемые окружения •в нем разобраны все возможные ошибки Только практика и реальные кейсы от авторов Docker Академии- с нуля до уверенного уровня. 🎁 Скидка 40 процентов действует 48 часов 👉 Записывайся и сделай Docker своим настоящим рабочим инструментом.
965
18
🖥 FastAPI для клиента: как должны выглядеть API-клиенты в Python Python-сообщество отлично научилось делать API-серверы. Fas
🖥 FastAPI для клиента: как должны выглядеть API-клиенты в Python Python-сообщество отлично научилось делать API-серверы. FastAPI / DRF дают идеальный опыт разработчика: - типы - валидация - понятные эндпоинты - документация по OpenAPI - минимум рутины Но есть проблема. Серверы стали удобными и “правильными”, а вот клиентская сторона до сих пор часто выглядит как кустарщина. Что часто встречается в проектах на базе python: - везде раскиданы httpx.get/post - URL собираются руками - параметры и headers копируются по коду - ответы парсятся вручную - ошибки обрабатываются как попало - нет нормальных типов и автодополнения И именно тут часто появляется 80% проблем. API может быть идеально спроектирован, но пользоваться им неудобно. Да, можно сгенерировать кода клиента. Но чаще всего генератор выдаёт огромный неудобный код: - странные имена методов - перегруженные классы - нечитаемый boilerplate - всё равно приходится писать обёртки руками В итоге клиенты либо не генерируют вообще, либо генерируют и потом ненавидят. API-клиенты должны быть сделаны как фреймворк. Как FastAPI, только наоборот. То есть ты описываешь клиент красиво и декларативно: - функция описывает intent (что мы делаем) - типы описывают контракт - библиотека берёт на себя HTTP-рутину Вместо кода “на коленке” httpx.get("https://api.site.com/users/123") Должно быть get_user(123) И дальше библиотека сама: - соберёт URL - подставит параметры - сериализует запрос - выполнит HTTP - распарсит ответ - кинет нормальную ошибку - даст типы и автодополнение в IDE Именно эту идею автор статье и продвигает (проект Clientele) Сделать API-клиенты удобными, чистыми и типобезопасными так же, как мы привыкли делать серверы Проблема не в HTTP. Проблема в том, что API-клиенты в Python до сих пор не стали “первоклассным кодом”. А должны стать. Подробности: paulwrites.software/articles/python-api-clients
793
19
⚡️ Базовая аутентификация в Django: как сделать правильно В статье рассматривается, как настроить базовую (Basic) аутентифика
⚡️ Базовая аутентификация в Django: как сделать правильно В статье рассматривается, как настроить базовую (Basic) аутентификацию в Django для API и защищённых ресурсов. Что такое Basic Authentication Это самый простой способ аутентификации по HTTP: клиент отправляет логин и пароль в заголовке Authorization: Basic …, закодированные в base64. Подходит для API, но требует HTTPS, так как пароль передаётся в каждом запросе. Django по умолчанию не предоставляет Basic Auth для view-функций. Он есть только в Django REST Framework. Если нужен собственный API или простая защита эндпоинтов без DRF — придётся реализовать самому. Подход из статьи Автор показывает, как создать middleware или декоратор, который: - проверяет заголовок Authorization - декодирует базу64 - валидирует логин/пароль - возвращает 401 Unauthorized, если аутентификация не прошла Пример (упрощённо): 1) Извлекаем заголовок 2) Проверяем, что он начинается с Basic 3) Декодируем base64 4) Сравниваем с нужными учётками Для Django-view это можно обернуть в декоратор и использовать так: @basic_auth_required def my_view(request): … Плюсы – очень лёгкий способ защитить API – работает без дополнительных библиотек – гибко настраивается Минусы – нет сессий, токенов, CSRF и других продвинутых схем – подходит только под HTTPS – пароль передаётся в каждом запросе Кому полезно Если нужен простой API или внутренняя служба, где полноценный OAuth/JWT — overkill.Ссылка https://adamj.eu/tech/2025/12/08/django-basic-authentication/
1 054
20
🖥 Django 6.0 вышел - крупное обновление фреймворка Вышел Django 6.0, и это одно из самых насыщенных обновлений за последнее
🖥 Django 6.0 вышел - крупное обновление фреймворка Вышел Django 6.0, и это одно из самых насыщенных обновлений за последнее время. Релиз добавляет функциональность, которую разработчики долго закрывали сторонними библиотеками или кастомными решениями. Что нового и действительно важно: Поддержка template partials из коробки Теперь Django умеет частичные шаблоны на уровне фреймворка. Это упрощает структуру HTML, повышает переиспользуемость и делает шаблоны чище и понятнее без лишних include-хаков. Нативный фреймворк для фоновых задач В Django появился встроенный механизм для background tasks. Для многих проектов это означает, что Celery или RQ больше не обязательны для базовых задач — отложенные и асинхронные операции можно реализовать стандартными средствами. Встроенная система Content Security Policy (CSP) Django 6.0 получил полноценную поддержку CSP. Это серьёзный шаг в сторону безопасности по умолчанию и защита от XSS и других атак без внешних middleware. Современный email API с нормальной Unicode-поддержкой Работа с email стала более предсказуемой и дружелюбной к Unicode, что особенно важно для международных проектов и сложных шаблонов писем. Жизненный цикл версий Django 5.2 больше не имеет mainstream-поддержки. Разработчикам рекомендуется переходить на 6.0, чтобы получать новые возможности, обновления безопасности и улучшения платформы. Django продолжает двигаться в сторону «batteries included», но делает это аккуратно и прагматично. Django 6.0 снижает зависимость от внешних библиотек, усиливает безопасность и делает повседневную разработку заметно удобнее. Это релиз, который стоит внимательно изучить и запланировать апгрейд. https://www.djangoproject.com/weblog/2025/dec/03/django-60-released/
1 185