Files
checklist/backend/app/core/database.py
ronalds 1b0a50338e Cambios Implementados:
1. PostgreSQL (Base de Datos)
Variables de entorno: TZ=Atlantic/Canary y PGTZ=Atlantic/Canary
Configurado en todos los archivos Docker: docker-compose.yml, docker-compose.prod.yml, docker-stack.yml
2. Backend (FastAPI/Python)
Configuración de zona horaria al inicio de main.py
Conexión a PostgreSQL con parámetro de timezone
Event listener que establece timezone en cada conexión a la BD
Variable de entorno: TZ=Atlantic/Canary
3. Frontend (React)
Ya estaba usando fechas locales correctamente con el constructor new Date(year, month, day)
4. Migración SQL
Creado set_timezone_canary.sql para actualizar la BD existente
2025-12-09 00:24:21 -03:00

30 lines
797 B
Python

from sqlalchemy import create_engine, event
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
from app.core.config import settings
engine = create_engine(
settings.DATABASE_URL,
pool_pre_ping=True,
echo=settings.ENVIRONMENT == "development",
connect_args={"options": "-c timezone=Atlantic/Canary"}
)
# Configurar zona horaria al conectar
@event.listens_for(engine, "connect")
def set_timezone(dbapi_conn, connection_record):
cursor = dbapi_conn.cursor()
cursor.execute("SET TIME ZONE 'Atlantic/Canary';")
cursor.close()
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
Base = declarative_base()
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()