Dish_Recognition/dao/db.py

38 lines
861 B
Python

# coding=utf-8
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
try:
from loguru import logger
except ImportError:
import logging
logger = logging.getLogger(__name__)
session = None
def get_db_session():
"""MySQL 会话(服务端/后台使用)。"""
global session
if session is not None:
return session
try:
from dao.settings import CAIHUI_DATABASE
from dao.dbutils import get_db_engine
from sqlalchemy.orm import sessionmaker
import models # noqa: F401
engine = get_db_engine(**CAIHUI_DATABASE)
Session = sessionmaker(bind=engine)
Base.metadata.create_all(engine)
session = Session()
return session
except Exception as e:
logger.error('Create Session Failed for %s' % e)
return None