from __future__ import annotations from pathlib import Path from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker, declarative_base from fastapi_demo.app.core.config import settings # sorgt dafür, dass ./data existiert (für sqlite datei) Path("data").mkdir(exist_ok=True) engine = create_engine( settings.DATABASE_URL, connect_args={"check_same_thread": False} if settings.DATABASE_URL.startswith("sqlite") else {}, ) SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine) Base = declarative_base() def dispose_engine() -> None: engine.dispose()