【发布时间】:2021-09-24 03:39:55
【问题描述】:
我正在使用 FastAPI 构建一个 REST API,我非常喜欢这个工具,尤其是与 Pydantic 和 OpenAPI 的集成。
例如,我可以将端点采用的模型写为
class Model(BaseModel):
field1: str = Field(default=...)
field2: int = Field(default=...)
field3: List[int] = Field(default=...)
field4: float = Field(default=...)
class Config:
schema_extra = {
"example": {
'field1': 'example 1',
'field2': 1,
'field3': [1, 2],
'field4': 1.3,
}
}
但是我发现我的代码中有很多重复项,例如,如果我想创建另一个继承自 Model 的类并添加另一个字段 field5,我需要重新编写 Config 类为了定义新的例子。
有什么好的方法吗?例如,是否有任何工具允许您定义具有所有属性和示例的字段,然后根据需要包含的定义创建类 Model?
也欢迎任何其他更适合此的模式。
【问题讨论】: