我正在开发一个 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?