Automated Action 11ef92d44e Fix circular import issue in database models
- Created a dedicated base_class.py file to define the SQLAlchemy Base
- Updated all models to import Base from base_class.py instead of session.py
- Modified migrations/env.py to properly import models and Base
- Fixed circular dependency between models and base classes
2025-06-02 22:08:10 +00:00

26 lines
723 B
Python

from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from pathlib import Path
import os
# Check if we're running in the container environment
IN_CONTAINER = os.path.exists('/app/repo')
# Create the directory for the database if it doesn't exist
if IN_CONTAINER:
# Container path
DB_DIR = Path("/app") / "repo" / "storage" / "db"
else:
# Local development path
DB_DIR = Path("/app") / "storage" / "db"
DB_DIR.mkdir(parents=True, exist_ok=True)
SQLALCHEMY_DATABASE_URL = f"sqlite:///{DB_DIR}/db.sqlite"
engine = create_engine(
SQLALCHEMY_DATABASE_URL,
connect_args={"check_same_thread": False}
)
SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)