扶手:如何通过相关模型订购表 [英] Rails :HOw to order a table by associated model

查看:274
本文介绍了扶手:如何通过相关模型订购表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我认为这个问题是微不足道的。我有两个模式:用户和投注。 用户 的has_many:bettings

I think the problem is trivial. I have two models: User and Betting. User has_many :bettings

投注 belongs_to的:用户

Betting belongs_to :user

我只是想获得用户订购的谁更加bettings。

I just want to get the users ordered by who made more bettings.

推荐答案

您在Rails2或Rails3?

Are you on Rails2 or Rails3?

在Rails3,您可以使用Ruby的排序方法和喜欢的东西:

On Rails3, you can use the Ruby sort method and something like:

User.includes(:bettings).sort{|x,y| x.bettings.size <=> y.bettings.size}

当然,在这种情况下,SQL请求时,如果你有大的表是不是最佳的后整理时...我正在努力思考如何在没有答案的SQL水平做到这一点尚未...

Of course, in this case the sorting occurs after the SQL request, which is not optimum if you have large tables… I'm trying to figure how to do it at the SQL level with no answer yet…

这篇关于扶手:如何通过相关模型订购表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆