如何在Java';盖伊?

如何在Java';盖伊?,java,google-app-engine,google-cloud-datastore,Java,Google App Engine,Google Cloud Datastore,假设我在GAE Java应用程序中有以下(简化)模型: Entity project = new Entity("Project") project.setProperty("name", "test"); 及 如何获取所有引用特定项目的任务 我试过了 Query q = new Query("Task"); Query.FilterPredicate projectFilter = new Query.FilterPredicate("project"

假设我在GAE Java应用程序中有以下(简化)模型:

Entity project = new Entity("Project")
project.setProperty("name", "test");

如何获取所有引用特定
项目的
任务

我试过了

    Query q = new Query("Task");
    Query.FilterPredicate projectFilter =
            new Query.FilterPredicate("project",
                    Query.FilterOperator.EQUAL,
                    project.getKey()
                    );
    q.setFilter(projectFilter);
但是没有用。 我已经用数据存储查看器检查了实际数据,一切都准备就绪。
任务
对项目有一个正确的
,并且所有属性都被索引

唯一不寻常的事情是(考虑到我的应用程序支持多租户),将
Project
键作为查看器上的名称空间前缀

这可能是问题所在,有什么解决办法吗


非常感谢。

尝试使用
project.getKey().getId()

或者使用特殊的密钥筛选器:
Entity.key\u RESERVED\u属性

这里描述的是:

    Query q = new Query("Task");
    Query.FilterPredicate projectFilter =
            new Query.FilterPredicate("project",
                    Query.FilterOperator.EQUAL,
                    project.getKey()
                    );
    q.setFilter(projectFilter);