【发布时间】:2020-11-26 00:17:13
【问题描述】:
我无法确定 GCP 数据存储区是否支持查询实体的嵌套属性。
我现在的用例是这样的:
Module
-> Application
模块
应用
@Entity
class Module {
Long id;
@Reference
Applicaiton application;
}
@Entity
class Application {
Long id;
String name;
}
我想尝试根据嵌套的 Application 名称查询模块。我试过像这样提供过滤器但没有成功:
Query<? extends BaseEntity> query = Query.newEntityQueryBuilder()
.setKind("module")
.setFilter(PropertyFilter.eq("application.name", "UserApp"))
.build();
我正在通过他们的 DatastoreTemplate 使用 Springs GCP 数据存储抽象,但这似乎并不相关,因为当我尝试在 GCP 控制台上运行 GQL 时,我也没有得到任何结果。
SELECT * FROM module WHERE application.name = "UserApp"
感谢您花时间阅读本文。非常感谢您提供任何帮助!
【问题讨论】:
-
嗨@BenDol 我建议您查看官方文档here 以检查您的查询与官方查询之间的差异。能否请您单独检查一下,您是否可以正确查询他们的数据?
-
嗨@gso_gabriel,在向 Stackoverflow 寻求帮助之前,我已经完成了您建议的两件事。答案是肯定的,我已经检查了差异,没有,是的,可以从每种类型中单独查询数据。
标签: java google-cloud-platform google-cloud-datastore datastore spring-cloud-gcp