Skip to content

Instantly share code, notes, and snippets.

@JoMingyu

JoMingyu/.py Secret

Created September 11, 2018 07:13
from contextlib import contextmanager
from flask import current_app
from sqlalchemy.orm import sessionmaker
from app.extensions import alchemy
@contextmanager
def session(engine_name):
Session = sessionmaker(bind=alchemy.get_engine(current_app, engine_name))
session = Session()
try:
yield session
session.commit()
except:
session.rollback()
raise
finally:
session.close()
read_session = lambda: session('read')
write_session = lambda: session('write')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment