Files
talks-site/backend/app/schemas.py
T
2025-06-14 10:03:42 -04:00

53 lines
708 B
Python

from pydantic import BaseModel, EmailStr
# DB Schemas
class ItemBase(BaseModel):
name: str
description: str | None = None
body: str
class Item(ItemBase):
id: int
class Config:
from_attributes = True
class UserBase(BaseModel):
username: str
email: EmailStr
class UserCreate(UserBase):
password: str
permissions: dict = {}
subscriber: bool = False
class UserOut(UserBase):
id: int
class Config:
from_attributes = True
# Other Schemas
class Token(BaseModel):
access_token: str
token_type: str
class TokenData(BaseModel):
username: str | None = None
class UserLogin(BaseModel):
username: str
password: str