Mulai sekarangMulai gratis

Menambahkan validator kustom

Mode360 Solutions adalah organisasi di balik sistem moderasi komentar, dan Anda mendapat tugas untuk membuat layanan validasi bagi semua karyawan. Sistem harus dapat memvalidasi detail masukan (username, email, dan age) sehingga hanya karyawan dengan alamat email resmi yang dapat mendaftar.

Anda perlu mendefinisikan model Pydantic User dengan dekorator @field_validator pada email untuk memeriksa apakah email yang dimasukkan diakhiri dengan @mode360.com.

Validator ini meningkatkan keamanan dan integrasi sistem.

Latihan ini merupakan bagian dari kursus

Menerapkan AI ke Produksi dengan FastAPI

Lihat Kursus

Instruksi latihan

  • Tambahkan dekorator Pydantic untuk membuat validator kustom pada field email.
  • Gunakan metode string endswith untuk memeriksa apakah alamat email diakhiri dengan domain @mode360.com.

Latihan interaktif langsung praktik

Cobalah latihan ini dengan melengkapi kode contoh ini.

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
Edit dan Jalankan Kode