我正在使用 pydantic 检查参数文件的格式。如果参数名称中有拼写错误,我希望 pydantic 引发错误,但它不会。例如,以下内容不会引发任何错误:from typing import Optionalfrom pydantic import BaseModelclass Param(BaseModel): param1: int param2: Optional[str] = Nonep = Param(param1=2, parram2=9)但parram2在我的 BaseModel 中没有定义(因为拼写错误),所以我希望 pydantic 引发错误。知道我应该怎么做吗?编辑:我找到了一个使用 dataclass 而不是 BaseModel 的解决方案,但 dataclass 似乎不适用于 FastAPI,所以我无法使用 dataclass
1 回答
![?](http://img1.sycdn.imooc.com/5458478b0001f01502200220-100-100.jpg)
慕婉清6462132
TA贡献1804条经验 获得超2个赞
我找到了解决方案:
from typing import Optional
from pydantic import BaseModel
class Param(BaseModel):
param1: int
param2: Optional[str] = None
class Config:
extra = 'forbid'
p = Param(param1=2, param2=9)
上面现在引发错误
添加回答
举报
0/150
提交
取消