0

この並列タスクレット コード スニペット #1 を見てください。

@ndb.tasklet
def get_data_parallel(e):  
  usr, det = yield (e.user.get_async(),                          
                    MyKind.query(ancestor = e.key).fetch_async())  
  raise ndb.Return((e, usr, det))

e.user が None の場合、例外が発生します。

このスニペット#2を試しています。しかし、私はまだ例外を取得します: "TypeError: Expected Future, received : None"

@ndb.tasklet
def get_data_parallel(e):
  usr, det = yield (e.user.get_async() if e.user else None, 
                    MyKind.query(ancestor = e.key).fetch_async())
  raise ndb.Return((e, usr, det))

スニペット #2 のようなことをするにはどうすればよいですか? future(None) または future('') または同様のものを返す可能性があります ??

ありがとうございます。

モイセス・ベルチン。

4

1 に答える 1

0

興味のある方のために、このスレッドは Google AppEngine Group で回答されました:

Google App Engine グループ ディスカッション

皆さんありがとう。

于 2013-03-26T09:40:47.160 に答える