我有以下 Pydantic 模型:
class Report(BaseModel):
id: int
name: str
grade: float = None
proportion: float = None
@validator('*', pre=True)
def blank_strings(cls, v):
print(v)
if v == "":
return None
return v
我的目标是能够将空字符串作为空值忽略,但它似乎不起作用。
Report(id=5,name="Steve",grade=0.5)
创建一个实例,proportion=None
但...
Report(id=5,name="Steve",grade=0.5,proportion="")
抛出错误value is not a valid float (type=type_error.float)
。我怎样才能得到与第一种情况相同的结果?