Añadir validadores personalizados
Mode360 Solutions es la organización detrás del sistema de moderación de comentarios, y te han asignado crear un servicio de validación para todas las personas empleadas. El sistema debe validar los datos de entrada (username, email y age) de modo que solo quienes tengan una dirección de correo oficial puedan registrarse.
Debes definir un modelo User de Pydantic usando el decorador @field_validator sobre email para comprobar si el correo introducido termina en @mode360.com.
Estos validadores mejoran la seguridad y la integración del sistema.
Este ejercicio forma parte del curso
Implementación de IA en producción con FastAPI
Instrucciones del ejercicio
- Añade el decorador de Pydantic para crear un validador personalizado en el campo
email. - Usa el método de cadena
endswithpara comprobar si la dirección de correo termina con el dominio@mode360.com.
ejercicio interactivo práctico
Prueba este ejercicio completando este código de ejemplo.
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