24

エンティティには、User と Trip の 2 種類があります。User は Trip の親であり、Trip は User の子です。

プライバシーを考慮して、旅行 ID/名前のみを投稿しています。Trip Key にはエンコードされたユーザー ID/名前が含まれているように見えるためです。

親キーが不明な場合、ID/名前でエンティティを取得する方法は?

4

5 に答える 5

19

できません。親キーはエンティティキーの一部であり、エンティティを取得するには完全なキーが必要です。

また、キーフィルタを使用したクエリでは、祖先キーを指定しない限り、親を持つエンティティは検索されません。

于 2013-01-13T10:36:39.883 に答える
0

@peter-knego 最初の質問: ユーザーは Trip の親です。ID でエンティティを取得するには、完全なキーを取得するために親でキーを再構築する必要があります。ただし、Trip の完全なキーに ID を割り当てるだけで、これを回避できます。また、ID が割り当てられた完全なキーを作成することもできます。これが私の論理です。

于 2013-01-15T10:01:24.593 に答える
0

次のようなことができます。

public Entity GetEntity(String kind, String idName) 
        throws EntityNotFoundException{
    Key key = KeyFactory.createKey(kind, Long.parseLong(idName));
    return datastore.get(key);
}
于 2013-09-29T18:54:08.070 に答える