blob: 1061a4679d4a878d6f30dab8b925a08522a54db2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
import os
import glob
import time
# import mysql.connector
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker
from sqlalchemy.ext.declarative import declarative_base
from flask_sqlalchemy import SQLAlchemy
from app.settings import app_cfg
# connection_url = "mysql+mysqlconnector://{}:{}@{}/{}?charset=utf8mb4".format(
# os.getenv("DB_USER"),
# os.getenv("DB_PASS"),
# os.getenv("DB_HOST"),
# os.getenv("DB_NAME")
# )
os.makedirs(app_cfg.DIR_DATABASE, exist_ok=True)
connection_url = "sqlite:///{}".format(os.path.join(app_cfg.DIR_DATABASE, 'animism.sqlite3'))
engine = create_engine(connection_url, encoding="utf-8", pool_recycle=3600)
Session = sessionmaker(bind=engine)
Base = declarative_base()
Base.metadata.bind = engine
db = SQLAlchemy()
# include the models in reverse dependency order, so relationships work
from app.sql.models.annotation import Annotation
from app.sql.models.paragraph import Paragraph
from app.sql.models.upload import Upload
from app.sql.models.media import Media
from app.sql.models.episode import Episode
from app.sql.models.venue import Venue
|