123456789101112131415161718192021222324252627 |
- import os
- from sqlalchemy import create_engine
- from sqlalchemy.ext.declarative import declarative_base
- from sqlalchemy.orm import sessionmaker
- from dotenv import load_dotenv
- from os.path import join, dirname
- ## ENV LOAD
- dotenv_path = dirname(__file__).replace("./sql",'env/database.env')
- load_dotenv(dotenv_path)
- SQLALCHEMY_DATABASE_URL = os.environ.get("SQLALCHEMY_DATABASE_URL")
- engine = create_engine(SQLALCHEMY_DATABASE_URL)
- SessionLocal = sessionmaker(autocommit=False, autoflush=False, bind=engine)
- Base = declarative_base()
- # Dependency
- def get_db_session():
- db = SessionLocal()
- try:
- yield db
- except:
- db.rollback()
- raise
- finally:
- db.close()
- ### define database session, deal with database setup and connection
|