backend/auth/models.py
2025-05-05 20:38:37 +03:00

27 lines
773 B
Python

from sqlalchemy import Column, Integer, String, Enum, DateTime
import enum, datetime
from ..config import Base
class Role(str, enum.Enum):
admin = "admin"
user = "user"
mod = "mod"
class Status(str, enum.Enum):
banned = "banned"
active = "active"
suspended = "suspended"
class User(Base):
__tablename__ = "users"
user_id = Column(Integer, primary_key=True)
username = Column(String, unique=True)
name = Column(String)
surname = Column(String)
hashedPassword = Column(String)
email = Column(String, unique=True)
role = Column(Enum(Role), default=Role.user)
status = Column(Enum(Status), default=Status.active)
bio = Column(String(144))
created_date = Column(DateTime, default=datetime.datetime.utcnow)