Spaces:
Runtime error
Runtime error
| from sqlalchemy import create_engine | |
| from sqlalchemy.orm import sessionmaker, DeclarativeBase | |
| from .config import Settings, build_database_url | |
| settings = Settings() | |
| db_url = build_database_url(settings) | |
| class Base(DeclarativeBase): | |
| pass | |
| engine_kwargs = {"echo": False, "pool_pre_ping": True} | |
| if db_url.startswith("sqlite"): | |
| # Uvicorn / FastAPI でスレッド跨ぎが起きても問題ないように | |
| engine_kwargs["connect_args"] = {"check_same_thread": False} | |
| engine = create_engine(db_url, **engine_kwargs) | |
| SessionLocal = sessionmaker(bind=engine, autoflush=False, autocommit=False) | |
| def get_db(): | |
| db = SessionLocal() | |
| try: | |
| yield db | |
| finally: | |
| db.close() | |