1

GqlQuery オブジェクトをキーの配列に変換する方法はありますか、またはクエリがキーの配列を返すように強制する方法はありますか? 例えば:

items = db.GqlQuery("SELECT __key__ FROM Items")

キーを含むオブジェクトを返します。

<google.appengine.ext.db.GqlQuery object at 0x0415E210>

次のようなキーの配列と比較する必要があります。

[datastore_types.Key.from_path(u'Item', 100L, _app_id_namespace=u'items'),
 ..., datastore_types.Key.from_path(u'Item', 105L, _app_id_namespace=u'fitems')]

注: 格納されたオブジェクトを照会してから .key() を呼び出すことで問題を回避できますが、これは無駄に思えます。

items = db.GqlQuery("SELECT * FROM Items")
keyArray = []
for item in items:
  keyArray.append(item.key())
4

1 に答える 1

3

確かに - GqlQuery オブジェクトで .fetch(count) を呼び出すことで結果を取得できます。実際、これは推奨される方法です。フェッチを繰り返すとバッチになるため、効率が低下します。

于 2009-11-13T18:23:46.313 に答える