Flask SqlAlchemy 开始和结束事务
Flask SqlAlchemy begin and end transaction
我正在使用 sqlalchemy 扩展在烧瓶中编写一个 SqlAlchemy 事务:
flask.ext.sqlalchemy
我的代码如下所示:
def charge_user(user):
db.session.begin()
try:
transaction = create_transaction()
if not transaction:
// cancel the session
return False
db.session.add(transaction)
user.paid = True
db.session.add(user)
return True
except Exception:
db.session.rollback()
return False
只是一个简单的问题,sqlalchemy 扩展与 flask-sqlalchemy 插件的文档非常混乱。如果是 flask-sqlalchemy 扩展,我该如何取消 session/transaction。
How do I do cancel the session/transaction in case of flask-sqlalchemy extension.
这就是 db.session.rollback()
的作用。
我正在使用 sqlalchemy 扩展在烧瓶中编写一个 SqlAlchemy 事务:
flask.ext.sqlalchemy
我的代码如下所示:
def charge_user(user):
db.session.begin()
try:
transaction = create_transaction()
if not transaction:
// cancel the session
return False
db.session.add(transaction)
user.paid = True
db.session.add(user)
return True
except Exception:
db.session.rollback()
return False
只是一个简单的问题,sqlalchemy 扩展与 flask-sqlalchemy 插件的文档非常混乱。如果是 flask-sqlalchemy 扩展,我该如何取消 session/transaction。
How do I do cancel the session/transaction in case of flask-sqlalchemy extension.
这就是 db.session.rollback()
的作用。