Files
New-planet-api/new-planet-backend/app/schemas/user.py
2025-12-13 14:39:50 +03:00

35 lines
677 B
Python

from pydantic import BaseModel, EmailStr, Field
from typing import Optional
from datetime import datetime
from app.models.user import UserRole
class UserBase(BaseModel):
email: EmailStr
full_name: Optional[str] = None
role: UserRole = UserRole.CHILD
class UserCreate(UserBase):
password: str = Field(..., min_length=8)
class UserUpdate(BaseModel):
email: Optional[EmailStr] = None
full_name: Optional[str] = None
password: Optional[str] = Field(None, min_length=8)
class UserInDB(UserBase):
id: str
created_at: datetime
updated_at: datetime
class Config:
from_attributes = True
class User(UserInDB):
pass