7098
Django Вопросы @haarrp all questions to @haarrp @ai_machinelearning_big_data -ML @ArtificialIntelligencedl -AI @datascienceiot - ml 📚 @pythonlbooks -📚books @hr_itwork-работа
🎯 django-rls — декларативный Row-Level Security для Django + PostgreSQL
Пакет от [kdpisda](https://github.com/kdpisda/django-rls), который позволяет удобно задавать политики Row-Level Security (RLS) прямо внутри моделей Django — с генерацией SQL-политик на этапе makemigrations.
🔐 Основные возможности:
- Объявление RLS-политик в моделях (через класс `RLS`)
- Автоматическая генерация SQL-политик при миграциях
- Поддержка многотенантности (tenant_id)
- Совместимость с Django ORM и PostgreSQL
📦 Пример использования:
class Invoice(RLSModel):
customer = models.ForeignKey(Customer, on_delete=models.CASCADE)
class RLS:
policies = [
RLSPolicy(
name="tenant_isolation",
using="customer_id = current_setting('myapp.tenant_id')::integer"
)
]
♻️ Garbage Collector в Python — как он реально работает
Python сам управляет памятью, но делает это не одним, а двумя способами одновременно:
1⃣ Подсчёт ссылок (Reference Counting)
Каждый объект в Python хранит число ссылок на себя:
import sys
a = []
print(sys.getrefcount(a)) # покажет количество ссылок на объект
a = []
a.append(a) # теперь объект содержит ссылку на себя
gc. Все объекты отслеживаются по «возрасту»:
import gc
gc.collect() # вручную запустить сборку мусора
gc.get_count() # сколько объектов в каждом поколении
gc.get_threshold() # когда запускать сборку
🚀 TurboDRF — ускоритель Django REST Framework без боли
TurboDRF — лёгкий способ ускорить ваш Django API без перехода на FastAPI или переписывания логики.
🔥 Что даёт TurboDRF:
• ⚡ Быстрый рендер сериализаторов
• 🧠 Автоматический prefetch_related и select_related
• 🧊 Кэширование сериализованных ответов
• 🧩 Совместим с обычными DRF-сериализаторами
📦 Установка:pip install turbodrf
🛠️ Пример:
from turbodrf.mixins import TurboModelSerializer
class MySerializer(TurboModelSerializer):
class Meta:
model = MyModel
fields = "__all__"
📚 Django Styleguide — готовый гайд по архитектуре проектов для Django-разработки, основанные на опыте коммерческих проектов. Здесь сделан акцент на разделение бизнес-логики: сервисы для записи данных, селекторы для чтения и чёткие правила валидации в моделях.
Особенно полезен среди прочих раздел про обработку ошибок в DRF и примеры тестирования сложных сценариев. Авторы предлагают адаптировать подходы под конкретные задачи, а полный пример проекта вынесен в отдельный репозиторий.
🤖 GitHub
Ваш первый бэкенд на Django — пошаговый учебник
Бесплатный самоучитель по Django, созданный специально для новичков. Шаг за шагом вы создадите веб-приложение (блог) на Python с использованием фреймворка Django.
По ходу дела объясняются все необходимые основы — от базового Python до шаблонов HTML/CSS. К концу у вас будет собственный рабочий блог на сервере и понимание принципов бэкенд-разработки.
#бэкенд #python #django
🖥 DeepMesh – это исследовательский проект, направленный на создание высококачественных 3D-мешей с помощью методов глубокого обучения.
🟢Глубокое обучение для 3D-реконструкции: Проект использует нейросетевые методы для обучения неявных представлений объектов, что позволяет реконструировать гладкие и точные поверхности даже из разрежённых данных (например, облаков точек).
🟢Алгоритмы извлечения мешей: После получения неявной функции, описывающей форму объекта, применяются алгоритмы, такие как Marching Cubes, для извлечения явной 3D-сетки.
🟢Инструменты для визуализации и экспериментов: Репозиторий включает код для обучения моделей, проведения экспериментов и визуализации результатов, что облегчает воспроизведение исследований и применение метода в различных задачах компьютерного зрения и графики.
🟢Потенциал применения: Такой подход может быть полезен для задач реконструкции объектов, симуляции, компьютерной графики и дополненной реальности, где требуется точное представление сложных форм.
📌 Github
@pythonl
👩💻 Wowy — это шаблон интернет-магазина, построенный на Django 4.x, который предоставляет полный набор функций для управления!
🌟 Она обеспечивает удобный пользовательский интерфейс и мощную панель администратора. Включает поддержку управления товарами (с множеством изображений), управление категориями, корзину, список желаний, генерацию PDF-счетов и детальную аналитику продаж.
🔐 Лицензия: MIT
🖥 Github
@pythonl
🖥 Authentik — это система управления удостоверениями (IAM) с открытым исходным кодом, предназначенная для обеспечения аутентификации и авторизации пользователей в различных приложениях!
🌟 Она поддерживает единый вход (SSO), многофакторную аутентификацию (MFA) и интеграцию с популярными протоколами, такими как OAuth2, SAML и LDAP. Authentik используется для защиты веб-приложений и управления доступом на основе ролей.
🔐 Лицензия: CC BY-SA 4.0
🖥 Github
Узнайте о шаблонах Django с помощью этого руководства. Узнайте, что это такое, почему они полезны и как их использовать. Откройте для себя различные типы шаблонов Django.
https://blog.jetbrains.com/pycharm/2025/02/the-ultimate-guide-to-django-templates/
⭐️А вы знали, что можно легко преобразовать репозиторий GitHub для работы с LLM?
В мире современных технологий, где искусственный интеллект и машинное обучение становятся всё более распространёнными, важно уметь эффективно использовать доступные инструменты.
Одним из таких инструментов является возможность работы с репозиториями на GitHub для обучения и взаимодействия с языковыми моделями (LLM).
👾👾Как это сделать?
Если вы хотите адаптировать репозиторий GitHub для работы с LLM, вам нужно лишь внести небольшое изменение в URL.
Вместо стандартного адреса с «hub» замените его на «ingest».
Это простое действие позволит вам интегрировать данные из репозитория в ваши модели, что значительно упростит процесс обработки и анализа информации.
🤖Пример
Предположим, у вас есть URL репозитория:https://github.com/username/repository
Чтобы преобразовать его для работы с LLM, просто замените «hub» на «ingest»:https://gitingest.com/username/repository
Теперь вы можете использовать этот новый адрес для загрузки данных и обучения вашей модели.
👍🏻👍🏻👍🏻
@data_analysis_ml
🖥 Это - пошаговое руководство по интеграции MongoDB с Django с использованием библиотеки django-mongodb-backend!
🔗 Ссылка: *клик*
1–2 марта проводим Weekend Offer Analytics
Устроиться в Яндекс за выходные — реально. Ищем крутых аналитиков с опытом работы от 2 лет на Python, готовых работать в офисном или гибридном режиме на территории России.
Подавайте заявку до 24 февраля — и всего за 2 дня пройдите все технические собеседования. После сможете пообщаться с одиннадцатью нанимающими командами и выбрать ту, которая покажется самой интересной. Если всё сложится хорошо, сразу же пришлём вам офер.
Узнать подробности и зарегистрироваться.
🖥 Сложные фильтры Django с помощью Subquery
Subquery в Django - один из самых мощных инструментов в ORM. Документация хорошо объясняет его на высоком уровне, но если вы не разбираетесь в SQL, вы можете не до конца понять его возможности.
Примечание: В статье используется ipython и расширения django-extensions, чтобы использовать python manage.py shell_plus --print-sql, а затем форматировать этот SQL вручную с помощью sqlformat.org.
https://www.better-simple.com/django/2025/01/01/complex-django-filters-with-subquery/
Проверь свои знания о Django!
Это Django Quiz 2024 от Адама Джонсона. В нем всего 12 вопросов.
🚀 Пройди тест по ссылке: ссылка.
https://adamj.eu/tech/2024/12/18/django-quiz-2024/
@Django_pythonl
Скажите рутине STOP✋
👉 Ускорьте рабочие процессы и освободите время для более интересных дел — с помощью курса Слёрма «Python для инженеров».
Это обучение, заточенное на инженеров — в нём нет ничего лишнего, только то, что необходимо именно вам.
На курсе вы научитесь:
🔹 писать эффективный и поддерживаемый код;
🔹 писать Kubernetes-операторы и модули для Ansible;
🔹 создавать, использовать и тестировать свои API;
🔹 взаимодействовать с инструментами CI/CD, CVS и DevOps системами.
Для того, чтобы вы смогли «пощупать» курс изнутри, даём бесплатный пробный доступ на 3 дня.
А при покупке даём в подарок мини-курс «Python, Чат-боты и DevOps» и видеокурс «Gitlab CI/CD».
Какие базы данных поддерживает Django?
PostgreSQL и MySQL, SQLite и Oracle. Помимо этого, Django также поддерживает такие базы данных, как ODBC, Microsoft SQL Server, IBM DB2, SAP SQL Anywhere и Firebird с использованием сторонних пакетов. Примечание: официально Django не поддерживает базы данных no-SQL.
Митап для QA-инженеров от MТС Web Services
📍 3 июля | 19:00
📍 Офлайн в Москве | Онлайн
О чем поговорим:
— О создании отечественного браузерстека MWS SunQ;
— Об автотестах на естественном языке;
— Об идеальном фреймворке для автоматической генерации тестов;
— О предиктивной оценке качества.
На True Tech QA выступят эксперты из MTC Web Services, Альфа-Банка и BugBuster.
Для участия зарегистрируйся по ссылке
🔍Тестовое собеседование на Middle Python-разработчика в четверг
15 мая(в четверг) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Даня, старший разработчик в Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Даня будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Дане
Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqxCZjDW
Курс по разработке бэкенда приложений на Django
Мир веб-разработки не стоит на месте, и умение создавать крепкие бэкенды становится всё нужнее. Особенно когда можно собрать своё первое API-приложение уже на старте.
Ловите курс по Django, где прокачивается всё: от Git и настройки окружения до развёртывания проекта на сервер и тестирования через Pytest. А ещё отдельно разбираются темы вроде CI/CD, работы с базами данных через ORM и правильной архитектуры кода.
Если хочется разобраться, как строятся реальные бэкенд-сервисы на Django — заглядываем на этот курс.
#курс #backend #web #django #ru
🔍 Основные нововведения в Django 5.2
1. 📦 Автоматический импорт моделей в интерактивной оболочке
Теперь при запуске команды python manage.py shell все модели из установленных приложений автоматически импортируются.
Это упрощает работу в интерактивной оболочке, позволяя сразу использовать модели без необходимости ручного импорта. Для получения подробностей об импортированных объектах можно использовать флаг -v 2.
2. 🔗 Поддержка составных первичных ключей
Django 5.2 вводит нативную поддержку составных первичных ключей через класс CompositePrimaryKey. Это позволяет создавать таблицы с первичным ключом, состоящим из нескольких полей, без необходимости использования сторонних решений.
3. 🧩 Гибкая настройка BoundField в формах
Теперь можно переопределять класс BoundField на уровне проекта, формы или отдельного поля, устанавливая атрибут bound_field_class. Это предоставляет разработчикам более тонкий контроль над отображением и поведением форм.
4. ⚡ Расширенная асинхронная поддержка
Django продолжает движение в сторону асинхронности, добавляя новые асинхронные методы и улучшая реализацию бэкендов аутентификации. Это особенно полезно для операций, связанных с вводом-выводом, и способствует созданию более производительных приложений.
5. 🎨 Новые виджеты форм и улучшения интерфейса
Добавлены новые виджеты форм, такие как ColorInput, SearchInput и TelInput, соответствующие стандартам HTML5. Также улучшена доступность форм для пользователей с особыми потребностями.
Bastaki Software Solutions L.L.C-FZ
6. 🗃️ Улучшения в работе с базой данных
Поддержка изогнутых геометрий в GDAL, включая CurvePolygon, CompoundCurve, CircularString, MultiSurface и MultiCurve.
По умолчанию соединения с MySQL используют кодировку utf8mb4 вместо устаревшей utf8mb3.
Улучшена работа методов values() и values_list(), теперь они генерируют SELECT-запросы в указанном порядке.
🔧 Совместимость и поддержка
Django 5.2 поддерживает Python версий 3.10–3.13.
С выходом этой версии, основная поддержка Django 5.1 завершена. Последний минорный релиз 5.1.8, также содержащий обновления безопасности, был выпущен одновременно с 5.2.
Django 5.0 достиг конца расширенной поддержки. Последний релиз безопасности, 5.0.14, также был выпущен сегодня. Рекомендуется обновиться до версии 5.1 или более новой.
📥 Обновление и ресурсы
Загрузить Django 5.2 можно с официальной страницы загрузки или через PyPI.
Полные примечания к релизу доступны в официальной документации.
Для автоматического обновления кода и устранения устаревших конструкций можно использовать инструмент django-upgrade.
Django Project
Django 5.2 предлагает множество улучшений, направленных на упрощение разработки и повышение производительности приложений. Рекомендуется ознакомиться с новыми возможностями и планировать обновление своих проектов для использования всех преимуществ этой версии.
📌 Релиз
🔍Тестовое собеседование на Middle Бекенд Python-разработчика в четверг
27 марта(уже в четверг!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Python-разработчика.
Как это будет:
📂 Савва Демиденко, ТехЛид с опытом в Яндексе и Авито, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Савва будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Савве
Это бесплатно. Эфир проходит в рамках курса от ШОРТКАТ для Python-разработчиков, которые хотят повысить свой грейд и прокачать скиллы.
Все участники эфира получат бесплатный урок по System Design.
Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_py_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2Vtzquu6XcU
5 распространённых ошибок в Django
1️⃣ Вы не используете select_related и prefetch_related для FK и M2M запросов
❌ Ошибка: Неоптимизированные запросы к базе данных при работе с внешними ключами и многими ко многим, что приводит к неэффективным запросам (проблема N+1).
2️⃣ Недооценка возможностей Django Admin
❌ Ошибка: Недостаточное использование мощных функций интерфейса администрирования Django.
3️⃣ Обращение с QuerySets как с обычными списками
❌ Ошибка: Неправильное понимание работы QuerySets, что приводит к лишним запросам к базе данных.
4️⃣ Неверное обслуживание статических и медиа-файлов
❌ Ошибка: Использование Django для обслуживания статических и медиа-файлов в продакшене.
5️⃣ Использование `.all() с большими или неупорядоченными наборами данных
❌ Ошибка: Использование .all() на моделях без дефолтного порядка или с большими наборами данных, что приводит к проблемам с производительностью.
⚡ ai-hedge-fund – -инструмен для анализа финансовых рынков на основе ИИ
Новый репозиторий от команды AI Hedge Fund, который включает в себя экспериментальные скрипты и модули для анализа финансовых данных с использованием Python.git clone https://github.com/virattt/ai-hedge-fund.git
cd ai-hedge-fund
▪ Github
@pythonl
🖥 Mail0 — это проект с открытым исходным кодом, ориентированный на создание альтернативы Gmail, позволяющей пользователям управлять своей электронной почтой без зависимости от крупных провайдеров!
🌟 Он предлагает возможность самохостинга почтового сервера, интеграции с внешними сервисами (например, Gmail и Outlook) и обеспечивает конфиденциальность, так как данные остаются под полным контролем пользователя. Проект фокусируется на прозрачности, приватности и гибкости настройки.
🖥 Github
Что спрашивают на собеседовании у Middle Python-разработчика?
Уже завтра, 11 февраля в 19:00 мск — бесплатное открытое собеседование в прямом эфире!
Интервьюер Савва Демиденко, ex. TechLead в Яндексе, Авито и другом русском бигтехе будет задавать реальные вопросы и задачи разработчику-добровольцу. В конце — время вопросов ментору из зала.
Что узнаешь на эфире:
✅ Какие вопросы задают на собеседованиях и зачем
✅ Как подготовиться, чтобы получить достойный оффер
✅ Чего ждут от кандидатов на Middle Python
Запишись на эфир в боте ШОРТКАТ → @shortcut_py_bot
Реклама. ООО "ШОРТКАТ", ИНН: 9731139396, erid: 2VtzqwsYLFw
🖥 MicroPie — это ультра-микро веб-фреймворк на языке Python, разработанный для создания веб-приложений с минимальными усилиями!
🌟 Он поддерживает асинхронные веб-приложения благодаря реализации спецификации ASGI и обеспечивает высокую производительность и гибкость. Среди ключевых возможностей MicroPie — автоматическое сопоставление URL с функциями, управление сессиями с использованием cookies, поддержка шаблонов через Jinja2 (если установлена), а также минимальные зависимости, что упрощает разработку и развертывание приложений.
🔐 Лицензия: BSD-3-Clause
🖥 Github
@pythonl
🖥 Django Extensions — это популярный пакет для Django, который предоставляет набор дополнительных инструментов и расширений для разработки приложений!
🌟 Он включает команды управления, модели, декораторы и другие утилиты, упрощающие разработку и тестирование Django-проектов. Пакет часто используется для оптимизации рабочего процесса и добавления функциональности, которая отсутствует в стандартной версии Django.
🔐 Лицензия: MIT
🖥 Github
🖥 Cookiecutter — это кроссплатформенный инструмент командной строки для быстрого создания проектов на основе шаблонов!
🌟 Он используется для генерации проектов в различных языках программирования, включая Python, C и другие, упрощая настройку стандартных структур каталогов и файлов.
💡 Cookiecutter позволяет создавать проекты, используя как удалённые шаблоны (например, из GitHub), так и локальные, без необходимости знаний Python. Инструмент поддерживает пользовательские параметры, расширяемость, работу с любым форматом файлов, а также интеграцию с pipx для удобной установки.
🔐 Лицензия: BSD-3-Clause
🖥 Github
@pythonl
👩💻 django-robots — приложение для Django, которое управляет файлами robots.txt в соответствии с протоколом исключения ботов!
🌟 Оно помогает конфигурировать, генерировать и обслуживать robots.txt, регулируя доступ поисковых систем и различных ботов к веб-ресурсам. Библиотека интегрируется с Django, обеспечивая простоту настройки и поддержку различных версий Python и Django.
🔐 Лицензия: BSD-3-Clause
🖥 Github
@pythonl
👩💻 Django Debug Toolbar — это инструмент для отладки приложений на Django!
🌟 Он предоставляет настраиваемый набор панелей, отображающих отладочную информацию о текущих запросах и ответах, включая SQL-запросы, время выполнения, настройки и многое другое. Инструмент поддерживает интеграцию с дополнительными сторонними панелями и работает с Django версии 4.2 и выше. Полезен для анализа производительности и устранения ошибок.
🔐 Лицензия: BSD-3-Clause
🖥 Github