در سادهترین حالت، فیلدهای یک مدل در Pydantic فقط با استفاده از type annotation تعریف میشوند. در این حالت هیچ مقدار پیشفرض یا ساختار اضافی مثل Optional، list، dict یا Field() در نظر گرفته نمیشود.
سادهترین شکل انواع فیلدها در Pydantic:
| نوع فیلد | نمونه تعریف | توضیح |
|---|---|---|
| عدد صحیح (int) | id: int |
مقادیر عددی بدون اعشار |
| رشته (str) | name: str |
متن یا دادههای کاراکتری |
| عدد اعشاری (float) | price: float |
مقادیر عددی اعشاری |
| بولین (bool) | active: bool |
درست یا نادرست |
| تاریخ (datetime) | created_at: datetime |
تاریخ و زمان |
| مدل دیگر (Nested Model) | profile: Profile |
قرار دادن یک مدل ساده دیگر داخل مدل |
مثال ساده یک مدل با همین نوع فیلدها:
from datetime import datetime
from pydantic import BaseModel
class User(BaseModel):
id: int
name: str
age: int
active: bool
created_at: datetime
در این سادهترین حالت:
- Pydantic فقط براساس نوع (type) فیلدها را اعتبارسنجی میکند.
- تمام فیلدها الزامی هستند، چون مقدار پیشفرض ندارند.
- این مدل پایهایترین ساختار برای تعریف هر مدل در Pydantic است.