GQL获取ID字段

时间:2009-09-12 16:45:09

标签: python google-app-engine

在google appengine上,您可以通过执行类似

的查询来检索哈希键值
select __key__ from furniture

但是,appengine数据存储区为每种类型维护了一个很好的自动增量字段ID。

如何从查询中访问它?

select ID from furniture

不起作用

3 个答案:

答案 0 :(得分:5)

您也可以尝试

entity.key().id()

答案 1 :(得分:4)

我认为Gcl查询不能包含对访问器方法或属性提取的调用(与它只能"SELECT * FROM"获取整个实体或"SELECT __key__ FROM"仅获取密钥的事实相同 - 它不能像[假设! - ]] "SELECT this, that FROM中那样挑选和选择字段。“

因此,您需要获取密钥,然后调用每个密钥的.id()访问者(如果您希望None获取没有ID但是名称的密钥;请使用{{1}如果您更愿意获取名称(如果可用),.id_or_name()仅作为最后手段。例如,仅获得非无ID:

None

答案 2 :(得分:0)

当你提出这个问题时,我不确定它是否存在,但现在通过id检索实体非常容易。

YourModel.get_by_id (int(ids))

您可以在文档中阅读更多相关信息:https://developers.google.com/appengine/docs/python/datastore/modelclass#Model_get_by_id