Русский
Открыть в Telegram

Пост Pydantic ломается не в моделях, а в границах данных: 5 правил, которые спасают API

26 июня 2026
P
Python Web & Scripts — Django, FastAPI, скрипты
Pydantic ломается не в моделях, а в границах данных: 5 правил, которые спасают API Если Pydantic у вас «иногда валится без причины», проблема обычно не в валидации, а в том, что входной контракт размыт. Модель должна быть не копией JSON, а фильтром: принимать лишнее только осознанно, а поля с бизнес-смыслом делать явными. • Делайте отдельные схемы для input и output. Одна модель на всё почти всегда приводит к лишним optional-полям и странным дефолтам. • Не прячьте бизнес-логику в валидаторах. Валидатор проверяет форму и типы, а не решает, можно ли создавать объект. • Явно задавайте alias, если внешний API живёт на snake_case, а внутренний код — на другом соглашении. • Для вложенных объектов лучше провалиться сразу, чем тащить None глубоко в сервисный слой. Ещё одна частая ошибка — надеяться, что Pydantic «сам всё приведёт к нужному виду». Он приведёт, но иногда слишком щедро: строка станет числом, пустой список — валидным значением, а лишнее поле тихо пройдёт дальше. Для критичных границ лучше включать строгую валидацию и не полагаться на магию преобразований. Если модель начинает разрастаться, это сигнал разнести её на DTO, response-схемы и внутренние типы. Так код проще тестировать, а ошибка становится локальной: не в десяти сервисах, а в одном месте входа.
1 ·

Рядом в ленте

PPython Web & Scripts — Django, FastAPI, скриптыFable 5 скоро вернётся в публичный доступ В исходном коде Claude Code обнаружены упоминания о возвращении модели Fable 5 в публичный доступ с изменённой модельюPPython Web & Scripts — Django, FastAPI, скрипты7 ошибок в автоматизации на Python, из-за которых скрипт ломается в проде Автоматизация часто умирает не в логике, а на краях: файл не там, API отвечает пусто,
это сообщение
PPython Web & Scripts — Django, FastAPI, скриптыStarlette — это не «мини-FastAPI», а каркас, который удобно ломать и собирать под себя Если нужен тонкий HTTP-слой для микросервиса, вебхуков или внутреннего APPPython Web & Scripts — Django, FastAPI, скриптыChat GPT-5.6 будут выдавать лишь избранным США ограничивают публичный доступ к новым ИИ-моделям: теперь его выдают только проверенным пользователям после обязат
PPython Web & Scripts — Django, FastAPI, скриптыPython Web & Scripts — Django, FastAPI, скрипты@python_web_scripts · канал · Технологии
190подписчиков2средний охват поста
Лента площадки Открыть в Telegram

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Границы индекса · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем