Aangepaste validators toevoegen
Mode360 Solutions is de organisatie achter het moderatiesysteem voor reacties, en jij krijgt de taak om een validatieservice voor alle medewerkers te maken. Het systeem moet invoergegevens (username, email en age) kunnen valideren zodat alleen medewerkers met een officieel e-mailadres zich kunnen registreren.
Je moet een Pydantic-User-model definiëren en de @field_validator-decorator op email gebruiken om te controleren of het ingevoerde e-mailadres eindigt op @mode360.com.
Deze validators verbeteren de beveiliging en systeemintegratie.
Deze oefening maakt deel uit van de cursus
AI in productie brengen met FastAPI
Oefeninstructies
- Voeg de Pydantic-decorator toe om een aangepaste validator op het
email-veld te maken. - Gebruik de
endswith-methode voor strings om te controleren of het e-mailadres eindigt met het domein@mode360.com.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
from pydantic import BaseModel, field_validator, Field
class User(BaseModel):
username: str = Field(..., min_length=5, max_length=20)
email: str
age: int
# Add the Pydantic decorator to validate
____('email')
def email_must_be_example_domain(cls, user_email):
# Use the endswith method to validate the email ends with @mode360.com
if not user_email.endswith("____"):
raise ValueError('Email must be from the mode360.com domain')
return user_email