import os import logging from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker, declarative_base, Session from fastapi import Request from dotenv import load_dotenv load_dotenv() logger = logging.getLogger(__name__) SQLALCHEMY_DATABASE_URL = os.getenv("SQLALCHEMY_DATABASE_URL") assert SQLALCHEMY_DATABASE_URL, f"SQLALCHEMY_DATABASE_URL is not set" logger.info(f"SQLALCHEMY_DATABASE_URL: {SQLALCHEMY_DATABASE_URL}") engine = create_engine(SQLALCHEMY_DATABASE_URL) SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine) Base = declarative_base() # def get_db(): # session = SessionLocal() # logger.info("Postgres Session created successfully!") # try: # yield session # finally: # session.close() # logger.info("Postgres Session closed successfully!") # Dependency def get_db(request: Request): return request.state.db