blivechat/models/database.py

26 lines
514 B
Python
Raw Normal View History

2020-02-03 16:18:21 +08:00
# -*- coding: utf-8 -*-
from typing import *
import sqlalchemy.orm
import config
2023-07-29 01:07:04 +08:00
_engine: Optional[sqlalchemy.Engine] = None
class OrmBase(sqlalchemy.orm.DeclarativeBase):
pass
2020-02-03 16:18:21 +08:00
2021-07-17 13:03:45 +08:00
def init(_debug):
2020-02-03 16:18:21 +08:00
cfg = config.get_config()
2023-07-29 01:07:04 +08:00
global _engine
# engine = sqlalchemy.create_engine(cfg.database_url, echo=debug)
2022-02-15 00:18:46 +08:00
_engine = sqlalchemy.create_engine(cfg.database_url)
2020-02-03 16:18:21 +08:00
2022-02-15 00:18:46 +08:00
OrmBase.metadata.create_all(_engine)
2020-02-03 16:18:21 +08:00
2023-07-29 01:07:04 +08:00
def get_session() -> sqlalchemy.orm.Session:
return sqlalchemy.orm.Session(_engine)