Flask ломают не роуты, а хаос вокруг контекста и конфигов
Если проект на Flask начинает расти, самые дорогие баги обычно не в самих view-функциях. Они появляются там, где смешали конфиг, бизнес-логику и доступ к request: всё работает, пока один эндпоинт и один разработчик.
За неделю в репах чаще всего всплывают 4 вещи:
— глобальные переменные вместо app context или g;
— конфиг, собранный из os.environ прямо в модулях;
— SQL и HTTP-запросы внутри handler без слоя сервиса;
— каша из blueprints без понятных границ ответственности.
Проверка перед коммитом простая: view должна принимать request и отдавать response, а не управлять всем приложением. Конфиг — в одном месте, зависимости — через фабрику приложения, фоновые задачи — отдельно от синхронного запроса. Если код нельзя протестировать без поднятого сервера, это уже запах архитектуры.
Flask хорош там, где важны контроль и минимум магии. Но этот контроль работает только если с самого начала договориться о слоях: routing, services, storage, integrations. Тогда проект не превращается в набор скриптов с веб-обвязкой.
Python Web & Scripts — Django, FastAPI, скрипты
@python_web_scripts
Flask ломают не роуты, а хаос вокруг контекста и конфигов
Этот пост опубликован в Telegram-канале Python Web & Scripts — Django, FastAPI, скрипты. Подписаться можно по ссылке: @python_web_scripts.