Files
anotherboobsdirectory/packages/backend/alembic/env.py
Nicola Malizia 41da3553aa basic profile
2025-10-10 19:22:01 +02:00

45 lines
1.5 KiB
Python

# packages/backend/alembic/env.py
import os
import sys
from logging.config import fileConfig
from dotenv import load_dotenv # <--- 1. AGGIUNGI QUESTO IMPORT
from sqlalchemy import engine_from_config
from sqlalchemy import pool
from alembic import context
# Aggiungi la root del progetto (/app) al percorso di ricerca di Python
sys.path.insert(0, os.path.abspath(os.path.join(os.path.dirname(__file__), '..')))
# Aggiungi l'import del tuo modello specifico sotto l'import di Base
from app.models import Base, Celebrity
# this is the Alembic Config object, which provides
# access to the values within the .ini file in use.
config = context.config
# === 2. AGGIUNGI QUESTA SEZIONE PER CARICARE LA VARIABILE D'AMBIENTE ===
# Carica il file .env che si trova nella root del progetto (/app)
# Dato che lo script è in /app/alembic, dobbiamo risalire di un livello
dotenv_path = os.path.join(os.path.dirname(__file__), '..', '.env')
load_dotenv(dotenv_path=dotenv_path)
# Imposta programmaticamente l'URL del database nell'oggetto di configurazione di Alembic
config.set_main_option('sqlalchemy.url', os.getenv('DATABASE_URL'))
# === FINE DELLA SEZIONE DA AGGIUNGERE ===
# Interpret the config file for Python logging.
# This line sets up loggers basically.
if config.config_file_name is not None:
fileConfig(config.config_file_name)
# add your model's MetaData object here
# for 'autogenerate' support
# from myapp import mymodel
# target_metadata = mymodel.Base.metadata
target_metadata = Base.metadata
# ... il resto del file rimane invariato ...