from sqlalchemy import create_engine from sqlalchemy.orm import DeclarativeBase, scoped_session, sessionmaker from bot.config import DATABASE_URL engine = create_engine( DATABASE_URL, connect_args={"check_same_thread": False} if "sqlite" in DATABASE_URL else {}, ) SessionFactory = sessionmaker(bind=engine) Session = scoped_session(SessionFactory) class Base(DeclarativeBase): pass def init_db() -> None: from bot.models.user import User # noqa: F401 from bot.models.reminder import Reminder, ReminderLog # noqa: F401 Base.metadata.create_all(engine)