Aan de slagBegin gratis

Aangepaste modelvalidator

Je hebt een API om de voorraad bij te werken en je bent gevraagd een gebruiksvriendelijke foutmelding te tonen wanneer er negatieve aantallen worden ingevoerd.

De uitzondering RequestValidationError is alvast voor je geïmporteerd.

Deze oefening maakt deel uit van de cursus

AI in productie brengen met FastAPI

Bekijk cursus

Oefeninstructies

  • Importeer de annotatie voor aangepaste modelvalidatie.
  • Implementeer een aangepaste modelvalidatie die "after" de standaardmodelvalidaties draait.
  • Raise een RequestValidationError-uitzondering om validatiefouten zichtbaar te maken voor de API-gebruiker.

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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
Code bewerken en uitvoeren