Adicionando validadores personalizados
A Mode360 Solutions é a organização por trás do sistema de moderação de comentários, e você recebeu a tarefa de criar um serviço de validação para todos os funcionários. O sistema deve validar os dados de entrada (username, email e age) de modo que apenas funcionários com e-mail corporativo possam se registrar.
Você precisa definir um modelo User do Pydantic usando o decorador @field_validator no email para verificar se o e-mail informado termina com @mode360.com.
Esses validadores aumentam a segurança e a integração do sistema.
Este exercício faz parte do curso
Colocando IA em Produção com FastAPI
Instruções do exercício
- Adicione o decorador do Pydantic para criar um validador personalizado no campo
email. - Use o método de string
endswithpara verificar 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