FastAPI(12)- 重名 Pydantic Model 会导致 OpenAPI 报错

 

 

背景

在一个 Python 模块中,如果包含两个同名的 Pydantic Model,访问 /docs 会报错哦

from typing import Optional

import uvicorn
from fastapi import Body, FastAPI,
from pydantic import BaseModel

app = FastAPI()


class Item(BaseModel):
    name: str
    description: Optional[str] = None
    price: float
    tax: Optional[float] = None


class Item(BaseModel):
    it: str
    address: str

if __name__ == "__main__":
    uvicorn.run(app="10_model:app", host="127.0.0.1", port=8080, reload=True, debug=True)

启动 uvicorn 

 

浏览器访问 /docs

http://127.0.0.1:8080/docs#/

 

注意啦!一个 Python 模块中不要有重名的 Pydantic Model 哦!!

注意啦!一个 Python 模块中不要有重名的 Pydantic Model 哦!!

注意啦!一个 Python 模块中不要有重名的 Pydantic Model 哦!!

 

posted @ 2022-01-05 11:49  小学弟-  阅读(69)  评论(0编辑  收藏  举报