【发布时间】:2022-01-21 12:49:45
【问题描述】:
我将 pydantic 1.9.0 和 fastapi 0.71.0 与 Python 3.7.8 一起使用。以下是我定义模型的方式:
class PartModel(BaseModel):
_id: str
_key: str
number: str = Field(...)
name: str = Field(...)
price: int = Field(...)
class Config:
schema_extra = {
"example": {
"_key": "12453",
"number": "5F22",
"name": "SHA9-169",
"price": 4,
}
}
我想灵活使用模型,因为我的字典在长度方面并不完整。例如,一个字典可能有额外的键/值对。目前,当我尝试通过 FastApi 发出请求时,它不允许我在数据库中发布。有没有办法在不定义类中的每个键的情况下保持我的模型灵活/可扩展?
【问题讨论】:
-
在 db 模型周围使用一个包装器,并尝试解决这个问题,在那里保留固定/主列,并在包装器中保留一个附加的列
-
你能举个例子吗?
-
对不起,上面的方法不起作用,因为一旦你定义了一个数据库模式,现在你想向它添加具有不同键值的数据,然后使用 nosql db
-
已经在使用 nosql 数据库
标签: python database fastapi pydantic