0
    'TransactionOptions' object is not callable
Traceback (most recent call last):
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1511, in __call__
    rv = self.handle_exception(request, response, e)
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1505, in __call__
    rv = self.router.dispatch(request, response)
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1253, in default_dispatcher
    return route.handler_adapter(request, response)
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 1077, in __call__
    return handler.dispatch()
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 547, in dispatch
    return self.handle_exception(e, self.app.debug)
  File "/base/python27_runtime/python27_lib/versions/third_party/webapp2-2.3/webapp2.py", line 545, in dispatch
    return method(*args, **kwargs)
  File "/base/data/home/apps/.../0-1.361943419475938372/cron.py", line 26, in get
    db.run_in_transaction(xg_on, transactional_task)
  File "/base/python27_runtime/python27_lib/versions/1/google/appengine/api/datastore.py", line 2433, in RunInTransaction
    return RunInTransactionOptions(None, function, *args, **kwargs)
  File "/base/python27_runtime/python27_lib/versions/1/google/appengine/api/datastore.py", line 2571, in RunInTransactionOptions
    ok, result = _DoOneTry(new_connection, function, args, kwargs)
  File "/base/python27_runtime/python27_lib/versions/1/google/appengine/api/datastore.py", line 2593, in _DoOneTry
    result = function(*args, **kwargs)
TypeError: 'TransactionOptions' object is not callable

cron.py の私のコードは次のようになります。

def transactional_task():
    doStuff()
xg_on = db.create_transaction_options(xg=True)
db.run_in_transaction(xg_on, transactional_task)

ここのドキュメントから直接持ち上げた

アプリケーションエンジンが TransactionOptions を作成できないと考える理由は何ですか? 私のデータストアは高レプリケーションです。

4

1 に答える 1

0

どのドキュメント?db.run_in_transaction() は関数である最初の引数を取ります。最初の引数として TransactionOptions オブジェクトを取る run_in_transaction_options() を呼び出すつもりだったと思います。

于 2012-09-23T00:16:07.940 に答える