36 lines
578 B
Python
36 lines
578 B
Python
import uuid
|
|
from typing import TypeVar
|
|
|
|
from pydantic import BaseModel, Field
|
|
from fastapi_users import schemas
|
|
|
|
from ..core.schemas import Reader
|
|
from .models import User
|
|
|
|
|
|
class UserBase(schemas.CreateUpdateDictModel):
|
|
pass
|
|
|
|
|
|
class UserRead(User):
|
|
class Config:
|
|
fields = {
|
|
'_id': {'alias': 'id'},
|
|
'hashed_password': {'exclude': True}
|
|
}
|
|
|
|
|
|
class UserCreate(UserBase):
|
|
login: str
|
|
password: str
|
|
email: str
|
|
|
|
|
|
class UserUpdate(UserBase):
|
|
pass
|
|
|
|
|
|
class PasswordUpdate(BaseModel):
|
|
old_password: str
|
|
password: str
|