РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
72 of 307 menu

Функция Path

Функция Path применяется внутри функции-обработчика для объявления параметра пути, который уже присутствует в URL. Первым параметром передаётся значение по умолчанию, обычно ... (Ellipsis), что делает параметр обязательным. Далее можно передавать именованные аргументы для валидации и документации: gt, ge, lt, le, min_length, max_length, pattern, title, description, alias, deprecated.

Синтаксис

from fastapi import Path def handler(param: int = Path(default, *, gt=None, ge=None, lt=None, le=None, min_length=None, max_length=None, pattern=None, title=None, description=None, alias=None, deprecated=None)): ...

Пример

Давайте объявим параметр пути item_id с проверкой, что значение больше нуля:

from fastapi import FastAPI, Path app = FastAPI() @app.get('/items/{item_id}') def read_item(item_id: int = Path(..., gt=0)): return {'item_id': item_id}

Результат выполнения кода для адреса /items/5:

{"item_id": 5}

Пример

Давайте добавим метаданные и ограничение длины для строкового параметра пути name:

from fastapi import FastAPI, Path app = FastAPI() @app.get('/users/{name}') def read_user( name: str = Path(..., min_length=3, max_length=10, title='User name', description='The name of the user') ): return {'name': name}

Результат выполнения кода для адреса /users/abcde:

{"name": "abcde"}

Пример

Давайте используем регулярное выражение через параметр pattern для проверки формата идентификатора:

<+python+> from fastapi import FastAPI, Path app = FastAPI() @app.get('/articles/{article_id}') def read_article(article_id: str = Path(..., pattern='^[a-z]+$')): return {'article_id': article_id} <-python+>

Результат выполнения кода для адреса /articles/article:

{"article_id": "article"}

Смотрите также

  • функция Query,
    которая объявляет параметры запроса
  • функция Header,
    которая объявляет параметры заголовков
  • функция Cookie,
    которая объявляет параметры cookie
  • параметр description,
    который задаёт описание параметра
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить