私の目標は、文字列として提供された属性に基づいてエンティティの絶対ランクを計算することです。私が使用している基本的なアプローチは、クエリを発行し、その結果を降順で並べ替えて、特定のエンティティの属性値よりも大きいすべての結果をカウントすることです。クエリは次のようになります
int rank = o.query(Entity.class).order(String.format("-%s",attribute)).
.filter(String.format("%s >", attribute), something).count();
しかし、何かが行き詰まっている部分です。私がobjectifyの概念を理解している限り、特定のエンティティメンバーを照会することは問題外です。次のステップは、(醜いが開発時間の点では速い)if-constructを使用して特定のエンティティメンバーを識別するか、リフレクションの使用を開始する(少し醜いが開発時間の点では遅い)ことです。
いずれにせよ、私はこのタスクを達成するためのいくつかの明白なおよび/またはエレガントな方法を逃しているという感覚を残されています。助言がありますか?どうも。