是否有一种方法来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')]

请注意:我可以通过查询存储的对象,然后调用。关键()得到解决该问题,但这似乎浪费

items = db.GqlQuery("SELECT * FROM Items")
keyArray = []
for item in items:
  keyArray.append(item.key())
有帮助吗?

解决方案

当然 - 可以通过调用.fetch(计数)的GqlQuery对象上获取结果。这是推荐的方式,实际上 - 迭代提取分批结果,所以是低效率的

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top