我在 Pylons 1.0 框架上使用 SQLAlchemy 0.6.4。我已经尝试了将 autoflush 和 autocommit 设置为 True 和 False 的所有排列,但我发现 SQLAlchemy 想要包装所有 SQL 会话或使用 BEGIN/COMMIT 进行写入。我在 models/meta.py 中配置了scoped_session,如下所示:
"""SQLAlchemy Metadata and Session object"""
from sqlalchemy import MetaData
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import scoped_session, sessionmaker
__all__ = ['Base', 'Session']
# SQLAlchemy session manager. Updated by model.init_model()
Session = scoped_session(sessionmaker(autoflush=False, autocommit=True))
# The declarative Base
Base = declarative_base()
metadata = MetaData()
如果您的问题是这种行为的缓慢,解决方案可能是在您的应用程序中以某种合理的方式显式开始/结束事务。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)