Coverage for docs_src / generate_clients / tutorial003_py310.py: 100%
23 statements
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
« prev ^ index » next coverage.py v7.13.3, created at 2026-04-06 01:24 +0000
1from fastapi import FastAPI 1adbc
2from fastapi.routing import APIRoute 1adbc
3from pydantic import BaseModel 1adbc
6def custom_generate_unique_id(route: APIRoute): 1adbc
7 return f"{route.tags[0]}-{route.name}" 1adbc
10app = FastAPI(generate_unique_id_function=custom_generate_unique_id) 1adbc
13class Item(BaseModel): 1adbc
14 name: str 1abc
15 price: float 1abc
18class ResponseMessage(BaseModel): 1adbc
19 message: str 1abc
22class User(BaseModel): 1adbc
23 username: str 1abc
24 email: str 1abc
27@app.post("/items/", response_model=ResponseMessage, tags=["items"]) 1adbc
28async def create_item(item: Item): 1adbc
29 return {"message": "Item received"} 1efgh
32@app.get("/items/", response_model=list[Item], tags=["items"]) 1adbc
33async def get_items(): 1adbc
34 return [ 1ijkl
35 {"name": "Plumbus", "price": 3},
36 {"name": "Portal Gun", "price": 9001},
37 ]
40@app.post("/users/", response_model=ResponseMessage, tags=["users"]) 1adbc
41async def create_user(user: User): 1adbc
42 return {"message": "User received"} 1mnop