说我有这些课程:
@Entity class MyEntity {
@Id String id;
@Index Ref<?> ref;
}
@Entity class Kind2 {
...
}
我可以查询MyEntitiy
引用ref
的任何实例的所有Kind2
个对象吗?如果是这样,怎么样?
答案 0 :(得分:2)
不可能
我认为数据结构的某些内容可能存在缺陷。即使你忘记了数据存储区,只需在普通的java中使用instance of
,很多时候它就是结构不对的标志。
但无论如何,请记住,在使用数据存储区时,您需要索引查询的内容。因此,如果您想查询ref类,请找出索引它的方法。可能是MyEntity上的另一个属性是要走的路。
答案 1 :(得分:2)
Moshe的回答确实是正确的。但是,您可以通过在密钥上执行不等式查询来技术上破解可行的方法。即>= KEY('Kind2', 0)
和<= KEY('Kind2', MAX_LONG)
。如果您的实体有父母,这会变得更加复杂。
除非你真的知道自己在做什么,否则我不建议这样做。
答案 2 :(得分:2)
我是这样实现的:
articles/view&id=".$menu['items'][$itemId]['link'].
像你一样将ofy().load().type(MyEntity.class).filter("ref =",Ref.create(new Kind2(kind2Id))).list();
添加到ref属性中。
它将检索它已过滤。