開始使用免費開始

自訂模型驗證器

你有一個用來更新庫存的 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
編輯並執行程式碼