Validador de modelo personalizado
Você tem uma API para atualizar o inventário e foi solicitado a exibir uma mensagem de erro fácil de entender quando quantidades negativas forem inseridas.
A exceção RequestValidationError
já está pré-carregada para você.
Este exercício faz parte do curso
Implementando IA na produção com FastAPI
Instruções do exercício
- Importa a anotação para validação do modelo personalizado.
- Implementa uma validação de modelo personalizada que rola
"after"
as validações de modelo padrão. - Levanta uma exceção
RequestValidationError
pra mostrar erros de validação pro usuário da API.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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