sqlalchemy-session

2020-06-27  本文已影响0人  粟米一粒

本文主要用来探讨如何合理的使用 sqlalchemysession的一些基础知识

session 可能遇到的问题

session 是什么

session生命周期管理

使用session的一个基本准则,一个应用应该去管理session的生命周期,对于处理特殊数据的函数session应该作为一个参数被传递进来并且使用。

创建session

使用session

在session中存储了一个对象的弱引用

commit&&close

session使用例子

from contextlib import contextmanager

@contextmanager
def session_scope():
    """Provide a transactional scope around a series of operations."""
    session = Session()
    try:
        yield session
        session.commit()
    except:
        session.rollback()
        raise
    finally:
        session.close()
        
        
def run_my_program():
    with session_scope() as session:
        ThingOne().go(session)
        ThingTwo().go(session)
上一篇 下一篇

猜你喜欢

热点阅读