次のように定義されたオブジェクト化エンティティがあります。
public class MyEntity1
{
@Id @Indexed String phoneNumber;
@Parent @Indexed Key<MyEntity2> parentEntityKey;
}
電話番号でフィルタリングしようとすると、次のエラー メッセージが表示されます。
Cannot (yet) filter by @Id fields on entities which have @Parent fields.
この構成の理由は、phoneNumber と parentEntityKey の両方を知っている場合に (クエリを実行する代わりに) これらのレコードを取得できるようにするためです。他のいくつかのケースでは、私は phoneNumber だけを知っていて、それを照会したいと考えています。
これは Objectify または Datastore の欠点ですか?回避策はありますか? 私の 2 つの要件 (両方の値がわかっている場合はクエリの代わりに取得し、それのみがわかっている場合は phoneNumber でクエリを実行する) を解決する提案はありますか?