db.py 466 B

123456789101112131415161718
  1. from sqlalchemy import create_engine
  2. from sqlalchemy.ext.declarative import declarative_base
  3. from sqlalchemy.orm import Session
  4. from core import constants
  5. engine = create_engine(f'sqlite:///{constants.DB_PATH}', echo=constants.SQL_ALCHEMY_VERBOSE)
  6. Base = declarative_base()
  7. def session():
  8. return Session(engine)
  9. def create():
  10. if constants.DB_PATH.exists():
  11. raise FileExistsError('A db file already exists')
  12. Base.metadata.create_all(engine)