python - 如何为 Pydantic/FastAPI 的枚举类设置默认值
问题描述
我试图找到一种方法来为Enum
Pydantic 和 FastAPI 文档上的类设置默认值,但我找不到如何做到这一点。这是我的枚举类:
class ConnectionStatus(str,Enum):
active:"active"
inactive:"inactive"
deprecated:"deprecated"
例如,我想将其active
设为默认值。谢谢 :)
解决方案
首先,您的枚举类有一些语法错误,它应该是=
而不是:
. 因此,你的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
推荐阅读
- django - Mac 上的 Django 安装
- angular7 - 如何延迟 Angular 7 中错误的 http 响应
- sql-server - SQL Server 中公式的动态计算
- go - 并行运行基准测试,即模拟同时请求
- node.js - Node Express Gateway 多个 API 端点
- verilog - 为什么一旦测试台进入 fr_count 条件块,我的“数据”寄存器变量会重置为 0?
- python - Openpyxl 没有写入我的 Excel 电子表格
- scala - 在这种情况下我可以避免变异吗?
- php - 2 如何改变'X' col。如果表格的每一行表示在单独的 HTML 表单中,并且每个提交按钮更改“X”值,则单击一次表格的值?
- android - Android Sqlite onupgrade 从数据库中删除表