profile.py 542 B

123456789101112131415161718192021222324
  1. from .base import ORMBase
  2. from pydantic import UUID4, BaseModel, ConfigDict, EmailStr
  3. from typing import Optional
  4. class ProfileCreate(BaseModel):
  5. email: EmailStr
  6. password: str
  7. class ProfileRead(ORMBase):
  8. id: UUID4
  9. first_name: Optional[str]
  10. last_name: Optional[str]
  11. avatar_url: Optional[str]
  12. email: Optional[str] = None
  13. class ProfileUpdate(BaseModel):
  14. model_config = ConfigDict(extra="forbid")
  15. first_name: Optional[str] = None
  16. last_name: Optional[str] = None
  17. avatar_url: Optional[str] = None