<b>5 ошибок в Django, из-за которых проект начинает тормозить и пухнуть</b>
За неделю в репах обычно всплывают одни и те же вещи: бизнес-логика в views, тяжёлые запросы в циклах, отсутствие индексов и «временно» оставленные raw SQL. Потом это превращается в медленный админ, долгие страницы и баги, которые сложно повторить.
— Логику лучше выносить в сервисы или model methods, а views держать тонкими.
— Для списков и связей почти всегда проверяйте select_related/prefetch_related, иначе ловите N+1.
— Индексы нужны не «на всякий случай», а под реальные фильтры и сортировки.
— Если задача повторяется, оформляйте её в management command или Celery-задачу, а не в ручной скрипт.
Ещё одна типовая проблема — отсутствие границ между слоями: сериализатор начинает считать, вьюха валидировать, модель ходить во внешние API. Такой проект сначала быстро собирается, а потом любой рефакторинг ломает половину приложения.
Если хотите, чтобы Django жил долго, держите один принцип: каждый слой делает свою работу и не тащит лишнее.
Python Web & Scripts — Django, FastAPI, скрипты
@python_web_scripts
<b>5 ошибок в Django, из-за которых проект начинает тормозить и пухнуть</b>
Этот пост опубликован в Telegram-канале Python Web & Scripts — Django, FastAPI, скрипты. Подписаться можно по ссылке: @python_web_scripts.