【发布时间】:2020-08-13 06:24:07
【问题描述】:
我正在使用 FastAPI 编写 Web 服务。它又好又快。
FastAPI 使用 pydantic 模型来验证输入和输出数据,一切都很好,但是当我想为 json 数组声明嵌套模型时,如下所示:
[
{
"name": "name1",
"family": "family1"
},
{
"name": "name2",
"family": "family2"
}
]
我得到空响应。
我认为我的模型存在问题:
class Test(BaseModel):
name: str
family: str
class Config:
orm_mode = True
class Tests(BaseModel):
List[Test]
class Config:
orm_mode = True
那么,我的问题是我应该如何为 json 数组编写模型?
【问题讨论】:
-
注意你有 "orm_mode = True" ,很可能你遇到了 ORM 问题,而不是你的 Pydantic 模型......不能说更多,因为你没有提供细节或你的ORM。
-
如果你正在发布 json 数据,fastapi 会尝试自动将其转换为 pydantic 模型。否则,您可以简单地将字段声明为数组,就像在测试中所做的那样。您是否尝试过删除“class Config: orm_mode = True”这段代码?