我试图找到一种方法来设置Pydantic以及FastAPI文档上的Enum
类的默认值,但我找不到如何做到这一点。这是我的enum类:
class ConnectionStatus(str,Enum):
active:"active"
inactive:"inactive"
deprecated:"deprecated"
我想让active
作为默认值,例如。谢谢:)
首先,你的enum类有一些语法错误,它应该是=
代替:
。因此,您的ConnectionStatus
将变成,
class ConnectionStatus(str, Enum):
active = 'active'
inactive = 'inactive'
deprecated = 'deprecated'
要设置默认值,请使用下面的代码片段
from fastapi import FastAPI
from pydantic import BaseModel
from enum import Enum
app = FastAPI()
class ConnectionStatus(str, Enum):
active = 'active'
inactive = 'inactive'
deprecated = 'deprecated'
class SomeModel(BaseModel):
status: ConnectionStatus =ConnectionStatus.active
@app.post("/")
async def some_route(data: SomeModel):
return data
参考:枚举和选择- Pydantic Doc