Coverage for docs_src/path_operation_configuration/tutorial005.py: 100%

13 statements  

« prev     ^ index     » next       coverage.py v7.6.1, created at 2025-05-05 00:03 +0000

1from typing import Set, Union 1abcdef

2 

3from fastapi import FastAPI 1abcdef

4from pydantic import BaseModel 1abcdef

5 

6app = FastAPI() 1abcdef

7 

8 

9class Item(BaseModel): 1abcdef

10 name: str 1abcdef

11 description: Union[str, None] = None 1abcdef

12 price: float 1abcdef

13 tax: Union[float, None] = None 1abcdef

14 tags: Set[str] = set() 1abcdef

15 

16 

17@app.post( 1abcdef

18 "/items/", 

19 response_model=Item, 

20 summary="Create an item", 

21 response_description="The created item", 

22) 

23async def create_item(item: Item): 1abcdef

24 """ 

25 Create an item with all the information: 

26 

27 - **name**: each item must have a name 

28 - **description**: a long description 

29 - **price**: required 

30 - **tax**: if the item doesn't have tax, you can omit this 

31 - **tags**: a set of unique tag strings for this item 

32 """ 

33 return item 1ghijkl