FastAPI и Pydantic: валидация полей и интервалов — задачи

Задачи FastAPI на типы параметров, вложенные модели Pydantic и проверку интервалов бронирования.

Состав подборки: 2 вопроса с выбором ответа, 3 задачи на код. Условия и формат проверки указаны на странице каждой задачи.

Разберите маленький пример

Время начала и время окончания могут быть корректными датами по отдельности, но образовывать неверный интервал. Проверка типов не заменяет правило start < end. Проверка пересечения с существующей бронью требует ещё и данных о других интервалах.

На что обратить внимание

  • Различайте необязательное значение None и отсутствие обязательного поля.
  • Проверяйте границы числовых полей и форму вложенных объектов.
  • Для соседних броней согласуйте, считается ли конец включённым.
  • Не подменяйте проверку бизнес-правил только успешным созданием модели Pydantic.

Порядок практики

  1. Path-параметры и типы — задача по FastAPI — выбор ответа.
  2. Ограничения полей и ошибки валидации — задача по FastAPI — выбор ответа.
  3. FastAPI: вложенная модель Pydantic и необязательное поле — код.
  4. Валидация интервала времени в FastAPI: задача — код.
  5. Пересечение интервалов бронирования в FastAPI: задача — код.

Куда двигаться дальше

Собрать целое приложение помогает курс FastAPI с базой данных и тестами.

Реализация операций API и конфликтов.

FastAPI и Pydantic: валидация полей и интервалов — задачи