我明白了AttributeError: __enter__
当我尝试像这样使用 SQLAlchemy 会话时guide http://docs.sqlalchemy.org/en/latest/orm/session_basics.html.
My code:
Session = scoped_session(sessionmaker(autoflush=True, autocommit=False, bind=engine))
@contextmanager
def session_scope():
session = Session()
try:
yield session
session.commit()
except:
session.rollback()
raise
finally:
session.close()
class SomeClass:
def __init__(self):
self.session_scope = session_scope
def something_with_session(self):
with self.session_scope as session: # <-- error
我究竟做错了什么?我正在使用Python 3.6
您必须调用该函数来获取上下文
with self.session_scope() as session:
...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)