我正在开发FastAPI应用程序。我有以下架构
class Address(BaseModel):
address_string: str = Field(None)
address_street: str = Field(None)
addres_number: str = Field(None)
我希望在不存在address_street和addres_number的情况下有条件地要求使用address_string字段,反之亦然,在不存在address_street的情况下,则需要address_street和address_number。
当前,我通过将所有字段都设为可选,并使用root_validator来检查一致性,并在所涉及字段的描述中记录此条件要求,来管理此问题。
是否有更清洁的方法来管理FastAPI上的此内置方法?
根验证器,或可选字段上的验证器是心跳解决方案。
关于密码here的类似示例。