Adicionando validadores personalizados
A Mode360 Solutions é a empresa por trás do sistema de moderação de comentários, e você precisa criar um serviço de validação para todos os funcionários. O sistema deve conseguir validar os detalhes inseridos (username
, email
e age
) para que só os funcionários com um endereço de e-mail oficial possam se cadastrar.
Você precisa definir um modelo Pydantic User
usando o decorador @field_validator
em email
para verificar se o e-mail inserido termina com @mode360.com
Esses validadores aumentam a segurança e a integração do sistema.
Este exercício faz parte do curso
Implementando IA na produção com FastAPI
Instruções do exercício
- Adicione o decorador Pydantic para criar um validador personalizado no campo “
email
”. - Use o método
endswith
para ver se o endereço de e-mail termina com o domínio@mode360.com
.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
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