Как стать автором
Обновить
3.08

Django *

Фреймворк для веб-приложений на Python

Сначала показывать
Порог рейтинга
Уровень сложности

backup Django

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.8K

Короче, начал делать проект на Django с нуля, и вообще впервые с ним работаю (noob). Соответственно с нейронками в паре, так как сам в Django не особо шарю, и они делают почти всё за меня (условно). Но поскольку нейросети любят переписывать код по-своему, периодически всё ломается: и код, и база, и остальная разная нечисть🌚

В итоге решил делать бэкапы вместе с нейронками — может, кому-то пригодится.

Да, я в курсе, что есть django-dbbackup, контроль версий и куча других тем, но мне пока так удобнее. Дальше — больше. Делюсь этим скорее для таких же новичков, как я. Вдруг будет полезно⤵️

Читать backup django

Новости

Как я строю удобную инфраструктуру вокруг Python-проектов: линтеры, Poetry, CI/CD и Docker

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров11K

Poetry вместо pip, Ruff вместо flake8, FastAPI вместо ручной документации. Что реально упрощает жизнь Python-разработчику сегодня — на примерах и с реальными конфигами.

Читать далее

Как создавать A/B-тесты SMS-рассылок с нейросетью DeepSeek

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров765

Привет, Хабр. В этой статье поможем владельцам бизнесов и маркетологам в два клика с помощью нейросети получить хорошие тексты для A/B-тестирования SMS-рассылок и разослать выбранные варианты контактам из CRM.

Для генерации текстов используем API DeepSeek, для рассылок — SMS API от МТС Exolve, а контакты берём из CRM-системы «Битрикс24».

Читать далее

F(), Func() и никаких циклов: как Django думает в SQL

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров3.9K

Привет, Хабр!

Сегодня рассмотрим, как использовать F()-экспрессии и Func()-обёртки в Django для того, чтобы выполнять арифметику, условия и преобразования не в Python, а на стороне базы данных. Один SQL-запрос может заменить десятки строк кода не теряя в качестве кода.

Читать далее

Пробуем Codex CLI от OpenAI для доработки ХрюХрюКара

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.3K

Пару дней назад я опубликовал статью про ХрюХрюКар - телегам-бот для борьбы со стоянкой автомобилей на зелёных зонах. Проект с открытым исходным кодом.

За два дня ко мне обратилось несколько сторонников с просьбой добавить их города. Но вот незадача: у меня была возможность через админ-панель Django править данные в базе, но об этом кеш сервера не узнает (основной бекэнд на Go). В результате приходилось добавлять данные и перезагружать контейнеры с go-бекэндом вручную.

Основные серверы ХХК уже имели сторы, которые получают и обрабатывают апдейты, прилетающие через redis.

По сути, оставалось внести правки в часть django-бэкенда, чтобы обрабатывать сигналы pre_save и pre_delete, сериализовать данные и отправлять их в нужный канал редиса.

Решил поручить эту задачу Codex CLI, которую вчера OpenAI представили нам с вами. 

Читать далее

Быстрее, выше, сильнее: сравнение подходов poetry, rye и uv

Уровень сложностиПростой
Время на прочтение15 мин
Количество просмотров2.4K

Привет, с вами снова Егор, Tech Lead компании ИдаПроджект. Я все еще занимаюсь стратегией, процессами и командами в направлении backend-разработки :)

Когда-то давно (по меркам IT), шесть лет назад, мы сходили на конференцию и послушали про poetry, преисполнились и внедрили его у себя на проектах. Но ничто не стоит на месте: вот уже два года мир знает о uv, а недавно появился еще и rye. Поэтому я посвятил пару выходных тестированию этих инструментов, чтобы использовать на наших типичных проектах.

В статье сравним poetry, uv и rye: кто быстрее управляет зависимостями, как использовать их в Docker, и какой из них выбрать в 2025 году. Заодно пробежимся по философии инструментов и посмотрим пару новых PEP стандартов, которые могут улучшить работу с зависимостями.

Читать далее

Плюсы и минусы написания запросов с ORM и на SQL

Время на прочтение6 мин
Количество просмотров2.9K

SQL против ORM — один из самых горячих споров среди разработчиков. Одни уверены, что писать SQL-запросы вручную — это гарантия контроля и эффективности. Другие считают, что ORM упрощает жизнь и снижает вероятность ошибок. А что, если правда где-то посередине?

Читать далее

Делаем жизнь легче: быстрый поиск в django и postgresql с помощью search_vector

Уровень сложностиСредний
Время на прочтение28 мин
Количество просмотров4.8K

Привет, меня зовут Таня и я backend-разработчик в ИдаПроджект

Сегодня хочу рассказать о полнотекстовом поиске — как это все работает в django, а как в postgres, и откуда вообще взялось. 

Современные компании ежедневно сталкиваются с разной текстовой информацией. Эффективный поиск не только ускоряет доступ к нужным данным, но и повышает продуктивность, снижает затраты и открывает новые возможности для анализа и принятия решений. 

Новичкам важно понять, как полнотекстовый поиск облегчает обработку данных и извлечение информации. Для тех, кто уже знаком с Django и PostgreSQL, статья станет экскурсом в полнотекстовый поиск, а заодно поможет интегрировать его в проекты. 

Ну что, погнали! Разберем, как эта технология развивалась, и какие ее ключевые элементы (триграммы и tsvector) делают возможным быстрый и точный доступ к информации.

Читать далее

Telescope — web-based log viewer UI

Уровень сложностиПростой
Время на прочтение1 мин
Количество просмотров2.7K

Всем привет

Хочу поделиться с сообществом своим проектом.

Telescope - это opensource web-приложение для удобной работы с логами, хранящимися в ClickHouse.

Читать далее

Кастомные lookup-операторы в Django ORM

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров1.1K

В этой статье рассмотрим тему кастомных lookup-операторов в Django ORM. Они позволяют расширить стандартный синтаксис Django, интегрируя свои SQL-функции и алгоритмы, при этом сохраняя привычный вид фильтрации.

Читать далее

Вот, к вам идет IoT: как цифровизировать старый жилфонд

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров4.1K

Тем, кто жил и живет в старых домах — «хрущевках», «панельках», «человейниках», — знакома беда разбалансировки систем жизнеобеспечения. Весной батареи обжигают, а зимой — еле теплые, вытяжки работают «не пойми как», подъезд освещен «не пойми где». А счет за такой сервис приходит как за нормально работающий. Возможно, вы будете удивлены, но сегодня столь знакомая многим проблема «кривого ЖКХ» отнесена к вопросам цифровизации, а для ее решения подключают не только домовые чаты в Телеграме или WA, но и передовые ИТ‑технологии: предсказательную аналитику, парсинг и анализ больших данных, интернет вещей. Причем речь уже идет не только о домах премиального класса. Цифровизация затронет и огромный советский и ранний постсоветский устаревший жилфонд, в котором, согласно последней переписи населения, до сих пор живет большинство россиян.

Как начинался EnergyStart

Технологическая компания «Конст» во главе с Альвиной Малышевой решила ответить на этот вызов. Команда разработала IoT (интернет вещей) — решение EnergyStart для многоквартирных жилых домов сегмента старой застройки. В том числе для совсем устаревшего жилфонда. Как рассказала Альвина, проект стартовал в 2023 году с запроса в Институт энергетики и электроники БГТУ им. В. Г. Шухова от Центра энергосбережения Белгородской области.

Один из сотрудников центра заметил, что система вентиляции в местной больнице работает неисправно: там душно и спертый воздух. Однако никто из сотрудников медучреждения почему-то не сигнализировал об очевидной проблеме в местную управляющую компанию (УК). И это, кстати, типичный случай: пока не произойдет авария, мало кого волнует проблема неэффективной работы инженерных систем. И поломку выявляют, лишь когда специалисты приходят на аварийный вызов. 

Читать далее

Давайте писать удобное локальное окружение…

Уровень сложностиСложный
Время на прочтение30 мин
Количество просмотров4K

Всем привет, меня зовут Аббакумов Валерий.

Я Python разработчик, в основном занимаюсь бэкэндом веб приложений и каждый раз когда дело доходит до разворачивания нового проекта по моей щеке начинает течь слеза.

Думаю, никто не будет спорить с тем, что локальное разворачивание нового проекта может вызвать неограниченное количество проблем. В данной статье я хочу представить выстраданную годами структуру проекта и организацию его окружения, которые помогают избежать большей части проблем, связанных с локальным разворачиванием проекта.

Пример будет представлен для Django проекта и PDM в качестве менеджера зависимостей, но концептуально должен подходить для любого проекта на любом языке и с любым набором сервисов.

Читать далее

Lock-free кэш для Django: коротко

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров1.4K

Привет, Хабр!

Сегодня будем строить lock‑free кэш в Django, то есть без блокировок, но с атомарными операциями. Никаких замков, никакого ожидания, только скорость.

«Зачем, если есть Redis?» Вот три причины:

- Скорость локальной памяти. Redis — молодец, но сетевые запросы всегда медленнее RAM.
- Блокировки — зло. Даже Redis лочит ключи при записи, а это минус к скорости.
- Иногда скучно. Ну честно, написать что‑то своими руками.

А ещё это хороший способ разобраться, как работают атомарные операции и lock‑free структуры.

Читать далее

Ближайшие события

Перенос JWT-токенов в куки: Django REST + React

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.2K

Привет, Хабр!

Эта статья родилась из моего опыта реализации авторизации с использованием JWT-токенов, хранящихся в куки. Я решил поделиться этим опытом, чтобы зафиксировать свои знания и, возможно, помочь тем, кто столкнется с похожими задачами

Статья будет полезна тем, кто хочет разобраться в реализации авторизации с JWT-токенами в куки с помощью Django REST Framework.

Читать далее

Signals в Django

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.1K

Привет, Хабр!

В этой статье я расскажу, как использовать Django Signals, чтобы приложение работало как часы. Signals — это встроенный механизм в Django, который позволяет разным частям приложения «общаться» друг с другом через события.

Читать далее

Битва двух якодзун: Grafana K6 vs Django DRF + Nginx

Уровень сложностиСредний
Время на прочтение10 мин
Количество просмотров5.1K

Привет, с вами снова Егор, Tech Lead компании ИдаПроджект :) Если забыли, напомню, что я занимаюсь стратегией, процессами и командами в направлении backend разработки.

Сегодня мы вместе сделаем минимальное приложение на django + DRF и проведем нагрузочное тестирование с помощью Grafana K6. Также попробуем применить кэширование в Nginx. Будем тестировать как GET-запросы, которые можно и нужно кэшировать, так и POST-запросы, которые кэшировать нельзя.

Погнали.

Читать далее

Оптимизация запросов в DjangoORM: когда и как использовать Raw SQL

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров4.1K

В рамках данной темы будут рассмотрены способы оптимизации запросов в DjangoORM. Основное внимание будет уделено использованию сырых SQL запросов, существующих для этого инструментов, преимуществам и недостаткам.

Читать далее

Базовая настройка SAST и DAST для django в gitlab cicd: как быстро внедрить решения по безопасности

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров2K

Привет, меня зовут Егор и я Tech Lead в компании ИдаПроджект :) Занимаюсь стратегией, процессами и командами в направлении backend разработки.

Сегодня расскажу вам о базовой настройке SAST и DAST для django в gitlab cicd. В разработке использование SAST (Static Application Security Testing) и DAST (Dynamic Application Security Testing) в последние годы стало уже стандартом. На эту тему есть уже довольно много материала на habr, но я хочу сконцентрироваться на быстром и базовом внедрении решения по безопасности в следующий стек технологий: 

Infrastructure: Docker, Docker Compose, GitLab, GitLab CI/CD 

Backend: Python, Django с использованием Poetry 

Frontend: Vue.js, Nuxt.js

Погнали!

Читать далее

Простое управление настройками приложения в проекте на django

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров1.7K

Как добавить кучу настроек для администратора в свой проект на django без дополнительных сервисов feature-toggle и потом в них не потеряться.

Читать далее

Django или Flask: какой фреймворк лучше подходит для вашего проекта?

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров7.5K

Flask и Django — два ведущих веб-фреймворка на языке Python, каждый из которых обладает уникальными особенностями и преимуществами. Они широко используются для создания и управления веб-приложениями, сервисами и сайтами. В этой статье мы подробно рассмотрим различия между Flask и Django, их ключевые характеристики, преимущества и недостатки, чтобы помочь вам выбрать наиболее подходящий инструмент для ваших проектов в 2024 году.

Читать далее
1
23 ...