我正在使用 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 回答

慕婉清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
提交
取消