from typing import Optional, List, Any from schemas.base import DBBase from pydantic import BaseModel, EmailStr, Field class send(BaseModel): name:str # 用户名 class UserBase(BaseModel): email: Optional[EmailStr] = None is_superuser: bool = False name: Optional[str] = None nickname: str = '' last_login_ts: str = '尚未登录' tel: str = '' class UserProfileEdit(BaseModel): nickname: str = None tel: str = None class User(UserBase): name: str class Users(BaseModel): data: List[User] = [] class CreateAccount(BaseModel): account_list: List[str] = [] class UserLogin(BaseModel): username: str = ... password: str = ... class UserRestPassword(BaseModel): username: str = ... password: str = ... class UserRestMyPassword(BaseModel): password: str = ... class UserCreate(UserBase): password: str name: str # **************************************************************************** # mongodb 模型 class UserDB(DBBase): email: EmailStr = None is_superuser: bool = False name: str nickname: str = '' tel: Any = '' last_login_ts: str = '尚未登录' data_where: dict = dict() user_id: str = '' types: int = None class UserDBRW(UserDB): hashed_password: str