Custom model validator
คุณมี API สำหรับอัปเดตสินค้าคงคลัง และได้รับมอบหมายให้แสดงข้อความแจ้งข้อผิดพลาดที่เข้าใจง่ายเมื่อมีการป้อนจำนวนที่เป็นค่าลบ
มีการโหลด exception RequestValidationError ให้ล่วงหน้าแล้ว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การ Deploy AI สู่ Production ด้วย FastAPI
คำแนะนำการฝึกหัด
- Import annotation สำหรับการตรวจสอบโมเดลแบบกำหนดเอง
- สร้างการตรวจสอบโมเดลแบบกำหนดเองที่ทำงาน
"after"การตรวจสอบโมเดลเริ่มต้น - ใช้ exception
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