fix(moodboard): apply visuals schema on startup

This commit is contained in:
root
2026-08-04 14:08:04 +05:30
parent 418c7f8bf3
commit 4125335bd2
2 changed files with 15 additions and 0 deletions
+2
View File
@@ -154,6 +154,8 @@ async def lifespan(app: FastAPI):
ensure_tna_authoring_schema(engine) ensure_tna_authoring_schema(engine)
from services.moodboard_pdf_service import ensure_moodboard_timings_schema from services.moodboard_pdf_service import ensure_moodboard_timings_schema
ensure_moodboard_timings_schema(engine) ensure_moodboard_timings_schema(engine)
from migrate_moodboard_visuals import ensure_visuals_schema
ensure_visuals_schema(engine)
logger.info("Database tables ready") logger.info("Database tables ready")
# Seed dummy users if none exist # Seed dummy users if none exist
+13
View File
@@ -19,6 +19,19 @@ NEW_COLUMNS = {
} }
def ensure_visuals_schema(engine):
"""Idempotently add visuals columns during application startup."""
inspector = inspect(engine)
try:
existing_cols = {c["name"] for c in inspector.get_columns("moodboard_decodes")}
except Exception:
return
with engine.begin() as conn:
for col, ddl in NEW_COLUMNS.items():
if col not in existing_cols:
conn.execute(text(f"ALTER TABLE moodboard_decodes ADD COLUMN {col} {ddl}"))
def migrate(): def migrate():
print(f"Connecting to database at: {settings.database_url}") print(f"Connecting to database at: {settings.database_url}")
engine = create_engine(settings.database_url) engine = create_engine(settings.database_url)