fastapi
33 строки · 674.0 Байт
1from typing import Annotated, Union2
3from fastapi import Body, FastAPI4from pydantic import BaseModel5
6app = FastAPI()7
8
9class Item(BaseModel):10name: str11description: Union[str, None] = None12price: float13tax: Union[float, None] = None14
15
16class User(BaseModel):17username: str18full_name: Union[str, None] = None19
20
21@app.put("/items/{item_id}")22async def update_item(23*,24item_id: int,25item: Item,26user: User,27importance: Annotated[int, Body(gt=0)],28q: Union[str, None] = None,29):30results = {"item_id": item_id, "item": item, "user": user, "importance": importance}31if q:32results.update({"q": q})33return results34