LoslegenKostenlos loslegen

Benutzerdefinierter Model-Validator

Du hast eine API zum Aktualisieren des Inventars und sollst eine nutzerfreundliche Fehlermeldung anzeigen, wenn negative Mengen eingegeben werden.

Die Exception RequestValidationError wurde bereits für dich vorab geladen.

Diese Übung ist Teil des Kurses

KI in der Produktion mit FastAPI bereitstellen

Kurs anzeigen

Anleitung zur Übung

  • Importiere die Annotation für eine benutzerdefinierte Modellvalidierung.
  • Implementiere eine benutzerdefinierte Modellvalidierung, die "after" (nach) den Standardvalidierungen ausgeführt wird.
  • Löse eine Exception vom Typ RequestValidationError aus, um Validierungsfehler für den API-User sichtbar zu machen.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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 bearbeiten und ausführen