fastapi
27 строк · 610.0 Байт
1from typing import Annotated, Union2
3from fastapi import FastAPI, Path4from pydantic import BaseModel5
6app = FastAPI()7
8
9class Item(BaseModel):10name: str11description: Union[str, None] = None12price: float13tax: Union[float, None] = None14
15
16@app.put("/items/{item_id}")17async def update_item(18item_id: Annotated[int, Path(title="The ID of the item to get", ge=0, le=1000)],19q: Union[str, None] = None,20item: Union[Item, None] = None,21):22results = {"item_id": item_id}23if q:24results.update({"q": q})25if item:26results.update({"item": item})27return results28