from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker, Session from app.infrastructure.database.models import Base SQLALCHEMY_DATABASE_URL = "postgresql+pg8000://user:password@localhost/dbname" __factory = None def init_db(): import app.infrastructure.database.models.accessories import app.infrastructure.database.models.deliveries import app.infrastructure.database.models.orders import app.infrastructure.database.models.roles import app.infrastructure.database.models.statuses import app.infrastructure.database.models.steps import app.infrastructure.database.models.storage_accessories import app.infrastructure.database.models.storages import app.infrastructure.database.models.users global __factory engine = create_engine(SQLALCHEMY_DATABASE_URL) __factory = sessionmaker(autocommit=False, autoflush=False, bind=engine) Base.metadata.create_all(bind=engine) def connect() -> Session: global __factory return __factory()