Google应用引擎:使用python返回实体ID的查询

时间:2010-05-07 04:39:32

标签: python google-app-engine

如何在GAE中使用python返回实体ID?

假设我有以下

class Names(db.Model):
   name = db.StringProperty()

2 个答案:

答案 0 :(得分:13)

您检索实体,例如使用query,然后在该实体上调用.key().id()(如果实体没有数字ID,则为None;有关您可以从{检索的其他信息,请参阅here {1}}对象)。

答案 1 :(得分:5)

这个问题早已得到回答 (我希望在不踩任何脚趾的情况下添加一些完整的例子......)

使用查询获取实体;只需获取密钥faster and uses less CPU than retrieving the full entity

query = Names.all(keys_only=True)
names = query.get() # this is a shorter equivalent to `query.fetch(limit=1)`
names.id()

来自模板:

{{ names.id }}

GQL替代方案,如评论中所示:

from google.appengine.ext import db

query = db.GqlQuery("SELECT __key__ FROM Names")
names = query.get()
names.id()