123456789101112131415161718192021222324252627282930313233343536373839 |
- from typing import Optional
- from pydantic import BaseModel, EmailStr
- # Shared properties
- class UserBase(BaseModel):
- email: Optional[EmailStr] = None
- is_active: Optional[bool] = True
- is_superuser: bool = False
- full_name: Optional[str] = None
- # Properties to receive via API on creation
- class UserCreate(UserBase):
- email: EmailStr
- password: str
- # Properties to receive via API on update
- class UserUpdate(UserBase):
- password: Optional[str] = None
- class UserInDBBase(UserBase):
- id: Optional[int] = None
- available_time: Optional[int] = None
- membership_status: Optional[str] = None
- class Config:
- orm_mode = True
- # Additional properties to return via API
- class User(UserInDBBase):
- pass
- # Additional properties stored in DB
- class UserInDB(UserInDBBase):
- hashed_password: str
|