如何在App Engine DataStore(Java)中查询根实体

时间:2011-08-03 13:15:40

标签: java google-app-engine google-cloud-datastore

我正在尝试编写一个查询,它将识别并返回所有根实体(即没有祖先的实体)。我最初尝试调用Query.setAncestor(null),但后来从datastore Query docs发现这不起作用:

  

将null作为参数传递给Query.setAncestor(String ancestor)不会查询没有祖先的实体(当前不支持此类查询)。

所以现在我有点卡住,考虑到查询API包含的内容,我无法弄清楚如何构建一个识别所有根实体的查询。

这需要应用程序功能,所以我正在寻找一种以编程方式工作的解决方案,而不是某些手动干预,这需要我登录管理控制台并单击按钮: - )

任何人都知道怎么做?

干杯,

埃德

2 个答案:

答案 0 :(得分:1)

您需要向可以查询的模型添加属性。也许是一个名为is_root的类似的布尔值。

答案 1 :(得分:0)

正如文档所示,没有办法做到这一点 - 除了解决@Robert建议的问题。如果你告诉我们你想要实现的目标 - 而不是你想要实现的目标 - 也许我们可以提供一个关于如何最好地实现它的建议。