fastapi
26 строк · 627.0 Байт
1from typing import Union2
3from fastapi import FastAPI4from pydantic import BaseModel5
6app = FastAPI()7
8
9class Item(BaseModel):10name: str11description: Union[str, None] = None12price: float13tax: float = 10.514tags: list[str] = []15
16
17items = {18"foo": {"name": "Foo", "price": 50.2},19"bar": {"name": "Bar", "description": "The bartenders", "price": 62, "tax": 20.2},20"baz": {"name": "Baz", "description": None, "price": 50.2, "tax": 10.5, "tags": []},21}
22
23
24@app.get("/items/{item_id}", response_model=Item, response_model_exclude_unset=True)25async def read_item(item_id: str):26return items[item_id]27