Bắt đầu ngayBắt đầu miễn phí

Thêm validator tùy chỉnh

Mode360 Solutions là tổ chức đứng sau hệ thống kiểm duyệt bình luận, và bạn được giao nhiệm vụ tạo một dịch vụ xác thực cho tất cả nhân viên. Hệ thống cần xác thực thông tin đầu vào (username, emailage) sao cho chỉ những nhân viên dùng địa chỉ email công ty mới có thể đăng ký.

Bạn cần định nghĩa một model User của Pydantic, sử dụng decorator @field_validator trên email để kiểm tra xem email nhập vào có kết thúc bằng @mode360.com hay không.

Các validator này giúp tăng cường bảo mật và khả năng tích hợp hệ thống.

Bài tập này là một phần của khóa học

Triển khai AI vào môi trường sản xuất với FastAPI

Xem khóa học

Hướng dẫn bài tập

  • Thêm decorator của Pydantic để tạo validator tùy chỉnh cho trường email.
  • Dùng phương thức chuỗi endswith để kiểm tra địa chỉ email có kết thúc với tên miền @mode360.com hay không.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

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
Chỉnh sửa và Chạy Mã