es
Feedback
Django Python

Django Python

Ir al canal en Telegram
6 612
Suscriptores
-524 horas
-97 días
-3830 días
Archivo de publicaciones
📌 Первые впечатления от системы фоновых задач в Django В свежем разборе объясняется, как Django наконец получает встроенный
📌 Первые впечатления от системы фоновых задач в Django В свежем разборе объясняется, как Django наконец получает встроенный инструмент для фоновой обработки заданий без необходимости тянуть сторонние библиотеки вроде Celery. 🔹 Что это такое Django Background Tasks - новый официально поддерживаемый механизм для: - отложенного выполнения задач (delayed jobs), - периодических задач (cron-style), - асинхронной фоновой обработки в рамках приложения. 🔹 Почему это важно Раньше разработчикам приходилось выбирать сторонние решения (Celery, RQ, Dramatiq) с дополнительной инфраструктурой (Redis/RabbitMQ и т.п.). Теперь у Django будет собственный, простой и интегрированный способ: - выполнять задачи после ответа пользователю, - обрабатывать тяжёлые операции вне запроса, - запускать периодические задачи без внешних кронов. 🔹 Как это работает - Вы определяете задачу как обычную Python-функцию. - Django регистрирует её в очереди внутреннего раннера. - Фоновый воркер выполняет такие задачи по расписанию или сразу - без внешнего брокера. 🔹 Плюсы по сравнению с альтернативами ✔ встроенная интеграция с ORM и Django-экосистемой ✔ нет необходимости настраивать отдельный брокер ✔ ожидаемая простота и знакомый синтаксис для Django-разработчиков 🔹 О чём ещё в статье - примеры кода с определением фоновых задач; - как запускать и мониторить воркеры; - ограничения и когда всё же стоит использовать более мощные системы. 📌 В сумме: Django делает шаг к тому, чтобы базовая фонвая обработка стала простой и доступной из коробки - это ускоряет разработку и снижает операционную сложность для большинства проектов. https://roam.be/notes/2025/a-first-look-at-djangos-new-background-tasks/ @pythonl

🖥 Как организовать архитектуру большого Python-проекта? Разработка крупного Python-проекта требует продуманной архитектуры.
🖥 Как организовать архитектуру большого Python-проекта? Разработка крупного Python-проекта требует продуманной архитектуры. Правильная структура кода упрощает развитие, тестирование и поддержку приложения. В этой статье мы рассмотрим ключевые принципы архитектурной организации для разных типов проектов - веб-приложений, библиотек, микросервисов и систем обработки данных. Обсудим разделение системы на слои (domain, service, infrastructure), использование популярных шаблонов проектирования (Dependency Injection, Repository, Facade), организацию кода по модулям и пакетам, примеры структуры каталогов, работу с зависимостями и конфигурацией (Pydantic, dotenv), логгирование и мониторинг, обеспечение тестируемости, поддержку расширяемости и модульности. Также приведем примеры кода и структуры каталогов, а в конце – общие советы и распространенные ошибки, которых следует избегать. https://uproger.com/kak-organizovat-arhitekturu-bolshogo-python-proekta/

🚀 django-keel - мощный стартовый шаблон для Django-проектов 💡 Что это такое Готовый современный каркас для Django-приложени
🚀 django-keel - мощный стартовый шаблон для Django-проектов 💡 Что это такое Готовый современный каркас для Django-приложений, который позволяет запускать новый проект за минуты — с правильной архитектурой, CI, Docker и продуманной конфигурацией. 🔥 Что внутри - Поддержка Python 3.12+ и Django 5.2+ - Несколько видов проектов: SaaS, API-backend, web-app, internal tools - Docker + Docker Compose - Настроенные линтеры, тесты, coverage и GitHub Actions - 12-factor конфигурация, разделённые settings (dev/test/prod) - Варианты API: DRF или GraphQL - Поддержка фронта: Next.js или HTMX + Tailwind 🎯 Почему стоит использовать - Экономит недели рутинной настройки - Даёт единообразную и поддерживаемую архитектуру - Ускоряет разработку MVP, внутренних сервисов и SaaS-продуктов 🛠 Быстрый старт

copier copy gh:CuriousLearner/django-keel my-project
Репозиторий: https://github.com/CuriousLearner/django-keel

🔥 Подборка полезных ресурсов для программистов. Здесь ты найдёшь всё это - коротко, по делу и без воды. Пока другие ищут, где “подглядеть решение”, ты уже используешь самые свежие инструменты! AI: t.me/ai_machinelearning_big_data Python: t.me/pythonl Linux: t.me/linuxacademiya Devops: t.me/DevOPSitsec Собеседования DS: t.me/machinelearning_interview C++ t.me/cpluspluc Docker: t.me/DevopsDocker Хакинг: t.me/linuxkalii Data Science: t.me/data_analysis_ml Javascript: t.me/javascriptv C#: t.me/csharp_1001_notes Java: t.me/java_library Базы данных: t.me/sqlhub Python собеседования: t.me/python_job_interview Мобильная разработка: t.me/mobdevelop Golang: t.me/Golang_google React: t.me/react_tg Rust: t.me/rust_code ИИ: t.me/vistehno PHP: t.me/phpshka Android: t.me/android_its Frontend: t.me/front Big Data: t.me/bigdatai МАТЕМАТИКА: t.me/data_math Kubernets: t.me/kubernetc Разработка игр: https://t.me/gamedev Haskell: t.me/haskell_tg Физика: t.me/fizmat 💼 Папка с вакансиями: t.me/addlist/_zyy_jQ_QUsyM2Vi Папка Go разработчика: t.me/addlist/MUtJEeJSxeY2YTFi Папка Python разработчика: t.me/addlist/eEPya-HF6mkxMGIy Папка ML: https://t.me/addlist/2Ls-snqEeytkMDgy Папка FRONTEND: https://t.me/addlist/mzMMG3RPZhY2M2Iy Папка Linux:https://t.me/addlist/w4Doot-XBG4xNzYy 😆ИТ-Мемы: t.me/memes_prog 🇬🇧Английский: t.me/english_forprogrammers 🧠ИИ: t.me/vistehno 🎓954ГБ ОПЕНСОРС КУРСОВ: @courses 📕Ит-книги бесплатно: https://t.me/addlist/BkskQciUW_FhNjEy Сохрани себе, чтобы не потерять!

Почему «Async Django» часто решает не ту проблему Django теперь умеет ASGI и async-views, но автор статьи отмечает: переход н
Почему «Async Django» часто решает не ту проблему Django теперь умеет ASGI и async-views, но автор статьи отмечает: переход на async сам по себе почти ничего не ускоряет. Чтобы получить выгоду, весь код должен быть переписан под асинхронность, а в реальных проектах прирост обычно минимальный. Где async реально нужен? В задачах с большим количеством ожидания: внешние API, WebSockets, стриминг ответов. Там async даёт ощутимую экономию. Но есть нюанс: Django стал «двухрежимным» фреймворком - синхронные и асинхронные части живут рядом, усложняя архитектуру. ORM всё ещё в основном синхронная, и это становится бутылочным горлышком. Поэтому для большинства проектов выгоднее оставить sync Django и вынести тяжёлые операции в фоновые задачи (Celery, RQ). Это проще, надёжнее и предсказуемее. Итог: Async Django - круто с инженерной точки зрения, но бизнес-ценность есть далеко не в каждом сценарии. Для большинства приложений классический Django остаётся лучшим выбором. https://www.loopwerk.io/articles/2025/async-django-why/

👩‍💻 django-cors-headers — Django-приложение для обработки заголовков Cross-Origin Resource Sharing (CORS)! 🌟 Этот инструме
👩‍💻 django-cors-headers — Django-приложение для обработки заголовков Cross-Origin Resource Sharing (CORS)! 🌟 Этот инструмент позволяет вашему Django-приложению принимать запросы из браузеров, отправленные с других доменов. Это особенно полезно для API-серверов или приложений, которые обслуживают фронтенд и бэкенд с разных доменов или портов. 🌟 Инструмент позволяет гибко управлять настройками CORS, включая поддержку конкретных методов, заголовков и настроек безопасности. Например, вы можете настроить разрешение только для определённых доменов или включить временный доступ для локальной разработки. Однако важно понимать риски, связанные с CORS, поскольку неправильная конфигурация может открыть доступ к вашим данным для нежелательных источников. 🔐 Лицензия: MIT 🖥 Github @python_job_interview

Профессиональный гайд по работе с ChatGPT (2025) Как использовать ChatGPT не просто как «умного собеседника», а как полноценн
Профессиональный гайд по работе с ChatGPT (2025) Как использовать ChatGPT не просто как «умного собеседника», а как полноценного помощника для программирования, маркетинга, аналитики и обучения? Мы разберём, какие версии модели существуют, какие плагины открывают новые возможности, как строить промпты так, чтобы получать точные и полезные ответы, и как интегрировать ChatGPT в рабочие процессы. Если у вас нет доступа к chatgpt можете использовать бесплатного бота в телеге, чтобы потестить все техники из статьи или воспользоваться обычной версией с помощью всем известного обхода блокировки. Не будем тянуть время, Поехали! 📌 Гайд

🚀 Django 6.0 — уже в пути! ✨ Главное в Django 6.0 - Content Security Policy (CSP) Новый ContentSecurityPolicyMiddleware, тег
🚀 Django 6.0 — уже в пути! ✨ Главное в Django 6.0 - Content Security Policy (CSP) Новый ContentSecurityPolicyMiddleware, теги csp() и настройки SECURE_CSP / SECURE_CSP_REPORT_ONLY. - Фоновые задачи Декоратор @task и метод enqueue() для простого запуска background jobs. - Template Partials Теги {% partialdef %} и {% partial %} для переиспользуемых фрагментов в шаблонах. - Обновлённое Email API Современный EmailMessage вместо устаревших MIME-классов. - Другие улучшения • В админке — иконки Font Awesome • В auth увеличены итерации PBKDF2 • Улучшения в Postgres, GeoDjango, миграциях и др. 🔄 Изменения без обратной совместимости - Минимальная версия MariaDB — 10.6 - Поддержка Python ≥ 3.12 - DEFAULT_AUTO_FIELD теперь всегда BigAutoField - Удалены устаревшие API и внутренние методы 👉 Подробнее: https://docs.djangoproject.com/en/dev/releases/6.0/ #django #python

🔥 Как я пишу Django views Автор предлагает использовать базовый класс Django View вместо generic class-based views (CBV) или
🔥 Как я пишу Django views Автор предлагает использовать базовый класс Django View вместо generic class-based views (CBV) или function-based views (FBV). Такой подход даёт простоту и гибкость при работе с HTTP-запросами. Отказ от сложных миксинов и использование понятных вспомогательных методов делает код более читаемым и сопровождаемым, снижая когнитивную нагрузку на разработчика. Ключевые идеи - В Django есть два популярных способа писать views: FBV (функции) и CBV (классы, включая generic views). - Generic CBV часто содержат слишком много "магии": базовые классы, миксины, переопределяемые методы — их трудно держать в голове. - FBV наглядны, но при усложнении логики код превращается в большие конструкции if request.method == .... - Автор выбирает компромисс: использовать базовый класс View. - Код остаётся простым. - Логика neatly разделяется по методам (`get`, post и др.). - Неподдерживаемые методы автоматически возвращают 405 (Method Not Allowed). Пример Вместо функции с if request.method:

class CommentFormView(View):
    def get(self, request, post_id, *args, **kwargs):
        post = get_object_or_404(Post, pk=post_id)
        form = CommentForm()
        return TemplateResponse(request, "form.html", {"form": form, "post": post})

    def post(self, request, post_id, *args, **kwargs):
        post = get_object_or_404(Post, pk=post_id)
        form = CommentForm(data=request.POST)
        if form.is_valid():
            comment = form.save(commit=False)
            comment.post = post
            comment.save()
            return redirect(post)
        return TemplateResponse(request, "form.html", {"form": form, "post": post})
👉 Источник: https://loopwerk.io/articles/2025/django-views/

🖥 rest-filters — фильтрационный бэкенд для Django REST framework Что это: Новый инструмент для фильтрации в DRF, который рас
🖥 rest-filters — фильтрационный бэкенд для Django REST framework Что это: Новый инструмент для фильтрации в DRF, который расширяет возможности стандартного django-filter. Особенности - Использует serializer-поля для разбора и валидации (без Django-форм и виджетов) - Поддержка группировки фильтров для гибкой логики - Constraint system — проверка взаимозависимостей между параметрами - Вложенные фильтры (nested filters) для работы со сложными структурами Последний релиз — v0.6.0 (21 августа 2025) - Возможность указывать группу по умолчанию для всего FilterSet (в том числе глобально) - Поддержка subgroups для более сложных связей между фильтрами - Новый метод FilterSet.get_combinator() для динамического выбора способа объединения фильтров - ⚠️ Breaking change: теперь Entry нельзя создавать без указания группы Почему стоит попробовать Если стандартные фильтры Django REST кажутся ограниченными, rest-filters даёт: - фильтрацию через сериализаторы, - сложные сценарии с группировками и вложенностью, - гибкость и расширяемость. 🔗 Репозиторий: https://github.com/realsuayip/rest-filters

🕸️ Django Tip — ускоряй сложные запросы с помощью `only()` + `defer()` В Django ORM часто делают Model.objects.all(), вытаскивая все поля модели. Но если таблица тяжёлая, это съедает кучу памяти и тормозит. 💡 Лайфхак: загружай только нужные поля:

# Вместо этого
users = User.objects.all()  

# Сделай так
users = User.objects.only("id", "username")  
А если нужно отложить подгрузку дорогих полей (например, JSON или TextField):


users = User.objects.defer("profile_data", "settings_blob")
🟢 Что это даёт ⚡ Сильно ускоряет SQL-запросы (SELECT только нужные столбцы). 📉 Экономит память, так как Django не держит ненужные данные. 🔄 Поля можно подгрузить позже — при первом обращении Django сделает отдельный запрос. 💡 Совет: комбинируй only() и defer() для тонкого контроля — так можно оптимизировать даже очень «тяжёлые» модели без переписывания логики.

🔍Тестовое собеседование на Middle Python в четверг с разработчиком из Авито 28 августа(в четверг) в 19:00 по мск приходи онл
🔍Тестовое собеседование на Middle Python в четверг с разработчиком из Авито 28 августа(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика. Как это будет: 📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Дане Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot Реклама. О рекламодателе.

🔍 Django ModelSearch: Умный поиск для ваших моделей Django ModelSearch позволяет индексировать модели Django и осуществлять поиск с использованием ORM. Поддерживает PostgreSQL FTS, SQLite FTS5, а также Elasticsearch и OpenSearch. Идеально подходит для создания мощных поисковых решений. 🚀Основные моменты: - Индексация моделей в Elasticsearch и OpenSearch - Поддержка автозаполнения и фацетного поиска - Повторное использование существующих QuerySets - Поддержка нечеткого и фразового поиска - Нулевая простоя при перестройке индекса 📌 GitHub: https://github.com/kaedroho/django-modelsearch

⚡️ Limekit — кроссплатформенный GUI-фреймворк на Lua Хочешь писать десктоп-приложения без Python и компиляции? С Limekit всё
⚡️ Limekit — кроссплатформенный GUI-фреймворк на Lua Хочешь писать десктоп-приложения без Python и компиляции? С Limekit всё просто: «написал один раз — запускай везде» (Windows, macOS, Linux). ✨ Что умеет: - Чистый Lua API, без необходимости знать Python - 40+ встроенных виджетов, поддержка Material Design и тёмной темы - Запуск без сборки — достаточно Python и самого фреймворка - Много примеров и документация на ReadTheDocs - Полностью опенсорс (GPLv3) 📌 Минимальный пример:

local window = Window{title='Limekit app'}
window:show()
Две строки кода — и у тебя уже готовое окно 🚀 ⚡️GitHub @pythonl

🖥 Разбираем Новые версии: Django 5.2.5 и Python 3.13.6 Django 5.2.5 (релиз — 6 августа 2025) - Тип релиза: патч-релиз, устраняющий ошибки версии 5.2.4. - Ключевые исправления: - Восстановлена поддержка стратегии UNNEST в QuerySet.bulk_create() для PostgreSQL. - Улучшена фильтрация по составному первичному ключу через tuple-выражения. - Исправлены ошибки валидации модели при использовании GeneratedField, Q и Case. - Добавлена совместимость с docutils версии 0.22. - Исправлен сбой при использовании ManyToManyField с составным первичным ключом — обновлены проверки fields.E347. Python 3.13.6 (релиз — 6 августа 2025) - Тип релиза: шестой maintenance-релиз ветки 3.13, включает около 200 исправлений, улучшений сборки и обновлений документации. - Ключевые особенности Python 3.13 по сравнению с 3.12: - Новый усовершенствованный REPL с многострочным редактированием, цветным выводом и цветными трассировками ошибок. - Экспериментальный free-threaded build mode (отключение GIL), доступен в виде python3.13t`/`python3.13t.exe. - Встроенный экспериментальный JIT-компилятор (по-умолчанию отключён). - locals() теперь имеет определённые семантики при мутации возвращаемого словаря. - Включена изменённая версия mimalloc (по-умолчанию, если доступно), обязательна для free-threaded режима. - Докстринги теперь очищаются от начальной отступной, что снижает объём `.pyc`-файлов. - Новый бэкенд dbm.sqlite3 используется по умолчанию при создании файлов. - Минимальная поддерживаемая версия macOS повысилась до 10.13 (High Sierra). - Безопасность: - Исправлена проблема, при которой фильтры filter="data" и filter="tar" в tarfile можно было обойти с помощью специально созданных сим- и жёстких ссылок. Вывод: - Django 5.2.5 — важный патч-релиз LTS-ветки, рекомендован для обновления производственных систем. - Python 3.13.6 — очередной maintenance-релиз с множеством багфиксов и улучшений, особенно интересен разработчикам, работающим с производительностью (REPL, JIT, free-threaded). Если нужно, могу подсказать, как безопасно обновиться или протестировать эти версии в вашем проекте. @pythonl

🔥 WaterCrawl — продвинутая платформа для веб-краулинга и подготовки данных под LLM Если нужно собрать и структурировать конт
🔥 WaterCrawl — продвинутая платформа для веб-краулинга и подготовки данных под LLM Если нужно собрать и структурировать контент с сайтов для ИИ — это мощный инструмент. 🧠 В основе: — Django + Scrapy + Celery — Асинхронный краулинг, API и UI — Скриншоты, PDF, JS-рендер, SSE 🚀 Возможности: — Быстрый запуск через Docker (`docker compose up`) — Интеграции с Dify, n8n, Langflow — Пакетная отправка запросов через REST API — SDK для Python, Go, Node, PHP ⚙️ Репозитории

🎂 Django празднует 20 лет — вспоминаем историю Самый первый коммит в публичный репозиторий Django состоялся 15 июля 2005 год
🎂 Django празднует 20 лет — вспоминаем историю Самый первый коммит в публичный репозиторий Django состоялся 15 июля 2005 года. Сегодня, 15 июля 2025-го, отмечаем этот важный юбилей! 13 июля 2005 года Джейкоб Каплан-Мосс сделал первый коммит в публичный репозиторий, который позже стал Django. С тех пор прошло 20 лет и более 400 релизов. Сегодня отмечаем круглую дату любимого веб-фреймворка. К юбилею опубликован доклад Django Origins, впервые показанный 10 лет назад на праздновании десятилетия Django в Лоренсе, Канзас. В нём — история создания фреймворка, ранние идеи и проекты, построенные на нём, а также немного цифровой археологии. https://simonwillison.net/2025/Jul/13/django-birthday/

OpenIDE – профессиональные инструменты без ограничений Первое большое онлайн-событие запуск OpenIDE — новой бесплатной мультиязычной среды разработки, построенной на базе IntelliJ IDEA Platform. 🧩 Вместе с ключевыми разработчиками, лидерами и представителями отрасли мы обсудим: - Зачем появилась OpenIDE. - Как она уже сегодня может заменить IntelliJ Platform для Java и Spring. - В чём её ценность для всей экосистемы. - Как работать с проектами на Go, Python и TypeScript. - Как присоединиться к сообществу и помочь развитию проекта. Покажем, почему OpenIDE — это не просто очередная сборка, а открытая экосистема для Java, Kotlin, Go, Python, JS, TS и десятков других языков. 👉🏻Со своим маркетплейсом. С исходниками. Без ограничений. 📅 31 июля в 17:00 МСК 📍 Бесплатно, онлайн, на всех наших платформах. Главное – зарегистрироваться. #реклама О рекламодателе

Как прокачаться до Python Middle+/Senior разработчика и получить новую работу в 2025? Ребята из Interview Hustlers в четверг
Как прокачаться до Python Middle+/Senior разработчика и получить новую работу в 2025? Ребята из Interview Hustlers в четверг проводят воркшоп о том, как junior и middle-разработчикам быстрее вырасти до уровня крепкого Senior, овладеть hard skills, востребованными в продуктовых компаниях и BigTech, и получить новую работу на сложном рынке в 2025 году, где AI уже наступает на пятки. 🗓 24 июля 19:00 по МСК Программа: ▪️ Какие hard skills качать, чтобы устроиться на Middle+/Senior разработчика в BigTech? ▪️ Как эффективно собеседоваться на тяжелом рынке летом 2025? Как выбивать максимальные офферы в РФ и заграницей? ▪️ Как вырасти технически на текущем месте работы и получить повышение в компании? Спикеры: ▪️Максим Аверин — Senior Python Dev, основатель школы Interview Hustlers, 8 лет опыта ▪️Сергей Соловьев — Python Tech Lead в Кипрском финтехе, 10+ лет опыта Регистрируйся на бесплатный воркшоп по ссылке. 📎 После регистрации на воркшоп ты получишь 2 бонуса: «Как разобрать неудачное собеседование без фидбека за 3 шага с AI?» и видео-урок «System Design интервью: Как спроектировать highload-маркетплейс с 0?»

🔍 Silk — мощный инструмент для профилирования Django-приложений в реальном времени. Этот open-source проект перехватывает HT
🔍 Silk — мощный инструмент для профилирования Django-приложений в реальном времени. Этот open-source проект перехватывает HTTP-запросы, SQL-запросы и позволяет детально анализировать производительность вашего кода через удобный веб-интерфейс. Инструмент обладает возможностью профилирования отдельных участков кода через декораторы и контекст-менеджеры. Инструмент особенно полезен при поиске узких мест в производительности, анализе сложных SQL-запросов и оптимизации времени отклика приложения. 🤖 GitHub