微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否可以在锡耶纳按计算字段排序?

如何解决是否可以在锡耶纳按计算字段排序?

| 我正在尝试根据在Play中计算出的文件,按顺序返回查询。 这是我正在使用的查询
return all().order(\"points\").fetch();
点定义为
public Integer points;
并感谢这个吸气剂
public int getPoints(){
    List<EventVote> VotesP = Votes.filter(\"isPositive\",true).fetch();
    List<EventVote> VotesN = Votes.filter(\"isPositive\",false).fetch();
    this.points= VotesP.size()-VotesN.size();
    return this.points;
}
我做时正确地调用吸气剂
int Votes=objectWithPoints.points;
我觉得自己在塞纳游戏中冒充了太多,但是我希望它可以正常工作(或类似的代码)。当前,它只是跳过订单条件。在其他任何字段上的订购都可以正常工作。     

解决方法

        当您说您等待得太多时,我认为您是对的:) Siena查询“ 4”向数据库执行请求。 因此它将排序存储在数据库中的值而不是存储在您的程序中。 从您所说的来看,我看到您有一个用于计算值的getter getPoints。 但是,如果您不将此值存储到数据库中,则Siena无法执行排序。 因此,要么计算值,然后将其设置在对象中,然后将对象保存到数据库中即可。
objectWithPoints.points = getPoints();
objectWithPoints.save();
在计算值之后,您可以在程序中自己对值进行排序。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。