问题描述
我正在使用pydantic检查参数文件的格式。如果参数名称中有错字,我希望pydantic引发错误,但不会。
from typing import Optional
from pydantic import BaseModel
class Param(BaseModel):
param1: int
param2: Optional[str] = None
p = Param(param1=2,parram2=9)
但是parram2
没有在我的BaseModel中定义,所以我希望pydantic引发错误。
知道我应该怎么做吗?
编辑:我找到了一个使用数据类而不是BaseModel的解决方案,但是数据类似乎无法与FastAPI一起使用,所以我不能使用数据类
解决方法
我找到了解决方法:
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,parram2=9)
以上内容现在引发错误