Додавання власних валідаторів
Mode360 Solutions — це організація, що стоїть за системою модерації коментарів, і вам доручено створити сервіс валідації для всіх співробітників. Система має перевіряти введені дані (username, email і age) так, щоб зареєструватися могли лише співробітники з офіційною електронною адресою.
Вам потрібно визначити модель Pydantic User, використавши декоратор @field_validator для поля email, щоб перевірити, чи введена адреса електронної пошти закінчується на @mode360.com.
Такі валідатори підвищують безпеку та полегшують інтеграцію системи.
Ця вправа є частиною курсу
Розгортання AI у продакшні з FastAPI
Інструкції до вправи
- Додайте декоратор Pydantic, щоб створити власний валідатор для поля
email. - Використайте метод рядка
endswith, щоб перевірити, чи адреса електронної пошти закінчується доменом@mode360.com.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
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