我的目标是根据作为字符串提供的某些属性来计算实体的绝对排名。我使用的基本方法是发出查询,按降序对其结果进行排序,并对所有大于我的特定实体的属性值的结果进行计数。查询看起来像这样
int rank = o.query(Entity.class).order(String.format("-%s",attribute)).
.filter(String.format("%s >", attribute), something).count();
但是,有些东西是我卡住的部分。据我了解objectify的概念,查询特定的实体成员是不可能的。我的下一步要么是使用(丑陋但在开发时间方面很快)if-construct 来识别特定的实体成员,或者开始使用反射(不那么丑陋,但在开发时间方面很慢)。
无论哪种方式,我都觉得我错过了一些明显和/或优雅的方式来完成这项任务。有什么建议么?谢谢。