from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import text
import yaml
import os
# load database settings from yml file
def init_db_uri():
    with open('db/db.yml', 'r') as f:
        db_config = yaml.load(f, Loader=yaml.FullLoader)
    return db_config
# creating a connection string
db = SQLAlchemy()

def init_db(app):
    db_config = init_db_uri()
    db_uri = f"mysql+{db_config['driver']}://{db_config['user']}:{db_config['password']}@{db_config['host']}/{db_config['dbname']}"
    app.config['SQLALCHEMY_DATABASE_URI'] = db_uri
    basedir = os.path.abspath(os.path.dirname(__file__))
    db_path = os.path.join(basedir, '', '', 'database.db')
    app.config['SQLALCHEMY_BINDS'] = {'db2': f'sqlite:///{db_path}'}
    db.init_app(app)



