# backend/db/session.py import os from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from urllib.parse import quote_plus from dotenv import load_dotenv # Cargar variables de entorno (.env) desde backend/.env load_dotenv(dotenv_path=os.path.join(os.path.dirname(__file__), "..", ".env")) DB_USER = os.getenv("DB_USER") DB_PASSWORD = quote_plus(os.getenv("DB_PASSWORD")) DB_HOST = os.getenv("DB_HOST") DB_PORT = os.getenv("DB_PORT", "55455") DB_NAME = os.getenv("DB_NAME") DATABASE_URL = ( f"postgresql+psycopg2://{DB_USER}:{DB_PASSWORD}@{DB_HOST}:{DB_PORT}/{DB_NAME}" ) # Crear engine engine = create_engine( DATABASE_URL, pool_size=5, max_overflow=10, future=True, echo=False, # pon True para ver las queries en consola ) # Fábrica de sesiones SessionLocal = sessionmaker( bind=engine, autoflush=False, expire_on_commit=False, future=True, )