开始使用免费开始使用

自定义模型验证器

您有一个用于更新库存的 API,需要在输入负数数量时向用户展示一条友好的错误信息。

RequestValidationError 异常已为您预加载。

本练习是课程的一部分

使用 FastAPI 在生产环境中部署 AI

查看课程

练习说明

  • 导入用于自定义模型验证的注解。
  • 实现一个自定义模型验证器,使其在默认模型验证完成之后("after")运行。
  • 抛出 RequestValidationError 异常,将验证错误反馈给 API 用户。

交互式实操练习

通过完成这段示例代码来试试这个练习。

# Import annotation for custom validation
from pydantic import BaseModel, ____

class InventoryRecord(BaseModel):
    name: str
    quantity: int

    # Create custom validator that runs after default validation
    @model_validator(mode="____")
    def validate_after(self):
        if len(self.quantity) < 0:
            # Raise request validation error
            raise ____(
                "Negative quantity is not allowed!"
            )
        return self
编辑并运行代码