我在 appengine 上使用 objectify 3.1 并尝试进行祖先查询。我想获取某个对象的所有子对象。下面是我的代码:
@Cached
@Entity
public class Car {
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long id;
private String make;
private String model;
}
@Cached
@Entity
public class Tire {
@Id
public String keyName;
@Parent Key<Car> car;
private String brand;
private String size;
}
我的查询是这段代码:
List<Tire> list= ofy.query(Tire.class).ancestor(new Key<Car(Car.class,carID))).list();
当我创建轮胎对象时,我使用此代码来设置关系:
newTire.setCar(new Key<Car>(Car.class,Car.getID()));
我知道 Parent 关系在那里,因为我可以在数据存储区管理员中查询它,它会在解码的实体键中显示父级:
Decoded entity key: Car: id=135172 > Tire: name=myCarUniqueID
这个查询总是返回 0 个结果,看起来我已经遵循了 objectify 网站上的所有最佳实践。任何帮助,将不胜感激!