我在appengine上使用objectify 3.1並試圖做一個祖先查詢。我想要獲取某種物體的所有孩子。下面是我的代碼:Objectify與祖先查詢不返回結果
@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()));
我知道父母的關係是存在的,因爲我可以在數據存儲管理員查詢,並將其顯示在解碼實體鍵父:
Decoded entity key: Car: id=135172 > Tire: name=myCarUniqueID
此查詢總是返回0的結果,它看起來像我遵循了objectify網站上的所有最佳實踐。任何幫助,將不勝感激!
DepartmentPersonnelInfo類與該問題有什麼關係?或者那應該是輪胎課? – alex 2012-04-11 15:33:54
是的,這是假設是輪胎類。它已被更正 – Patrick 2012-04-11 15:48:50
必須有更多的事情在這裏沒有顯示,因爲在你的例子中沒有看起來錯了(除了手寫輸入的各種拼寫錯誤)。嘗試從數據存儲管理頁面在GQL中運行等效的祖先查詢。 – stickfigure 2012-04-11 16:02:51