私は3つのエンティティをHuman、Dog、Treatとして持っています。 TreatエンティティにはキーKey<Dog>
があり、DogエンティティにはキーKey<Human>
があります。私がTreatについて質問すると、実際の犬のエンティティを含む応答が必要であり、犬のエンティティは、人間のための実際のエンティティを含む必要があります。それ、どうやったら出来るの?Objectify:外部キーの内容を照会
更新
各を通じて、私はその後、犬のデータにアクセスすることができ扱うすべてのお菓子のリストを返す必要がありますだから私は、次の2つのクエリ
getAllTreats()
を実行できるようにしたいと思いますその犬のデータを介して人間のデータを見つける。- 治療IDが与えられたら、私はそれをDogデータと、DogのHumanデータと一緒に取り出すことを望みます。
コード:(。彼は@Parent表記を述べた。しかし、問題はまだ残っている、少なくともtreatIdによって単一扱うためので、私はpgiecek +1を与えた)
@Entity
public class Human {
@Id
private Long id;
private String name;
}
@Entity
public class Dog {
@Id
private Long id;
private String name;
@Load
@Parent
private Ref<Human> human;
}
@Entity
public class Treat {
@Id
private Long id;
private String name;
@Load
@Parent
private Ref<Dog> dog;
}
+1しかし、問題があります。祖先のクエリの仕組みは、先祖を知ってからクエリを実行する(つまり、ルートからリーフに)上向きにする必要があるようです。しかし、もし私が持っているものがすべて治療IDであればどうなりますか?どのようにして、人間を含む犬を含むトリートを得るには? –
あなたのエンティティ間に正確な関係が含まれるようにあなたの質問を更新できますか?祖先の道は言及していませんでした。 – pgiecek
私は更新しました。 –