Rails:如何找出哪个父对象具有最大子记录

时间:2014-12-19 14:55:35

标签: sql ruby-on-rails rails-activerecord

这是我正在使用的两个模型,

用户模型

class User < ActiveRecord::Base
  has_many :products
end

产品型号

class Product < ActiveRecord::Base
  belongs_to :user
end
  

现在我想知道哪个用户的产品数量最多。

我知道我可以通过为用户和相关产品构建一个循环来找到答案,但是有没有办法通过主动记录查询找到它?

1 个答案:

答案 0 :(得分:4)

Product.select(:user_id).group(:user_id).order("count(user_id) desc").first.user可以是解决方案