简单的问题 1.如何检查某些代码是否在事务中执行? 2.如果可能,如何获取交易信息?
def someCode():
class DeleteMe(db.Model):
pass
#how to check it here?
key = db.Key.from_path(DeleteMe.kind(), 'test')
model = DeleteMe.get(key)
if model is None:
model = DeleteMe(key = key)
model.put()
我想检查someCode()是否在事务中运行:
db.run_in_transaction(someCode)
与否:
someCode()
答案 0 :(得分:3)
您可以使用db.is_in_transaction()
请参阅文档https://developers.google.com/appengine/docs/python/datastore/functions#is_in_transaction
如果您刚开始,我建议您考虑查看ndb而不是db。
ndb具有等效的ndb.in_transaction()
您应该查看事务上下文对象,以查看可以获取/设置的其他信息
https://developers.google.com/appengine/docs/python/datastore/functions#create_transaction_options