【发布时间】:2017-09-26 21:36:14
【问题描述】:
我在尝试对 SQLAlchemy ORM 中的 scoped_session 执行预构建查询时收到一个奇怪的错误 AttributeError: 'scoped_session' object has no attribute '_autoflush'。
我正在使用上下文管理器来生成 scoped_session,
@contextmanager
def connect(my_session_factory):
session = scoped_session(my_session_factory)
try:
yield session
except Exception as exception:
session.rollback()
raise exception
finally:
session.close()
然后像这样使用它:
from sqlalchemy.orm import Query
query = Query(my_model).offset(my_offset).limit(my_limit)
with connect(my_session_factory) as session:
instances = query.with_session(session).all()
return instances
然而,这引发了上述异常。
我还注意到session.query(my_model) 形式的查询工作正常。
我哪里错了?非常感谢!
【问题讨论】:
标签: python session sqlalchemy