自定义模型验证器
您有一个用于更新库存的 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