0

我有两个模型:

夹克.rb:

  has_many :button
  belongs_to :store

按钮.rb:

belongs_to :jacket

在我的商店控制器中,我希望能够做到 @store.jackets.order(buttons: :desc),但我不能这样做,因为它不是 db 列。我该怎么做?

4

1 回答 1

0

您需要编写一些 SQL 来计算关联,将计数别名为一个名称,并按该名称排序:

@store.jackets.joins(:buttons).select("jackets.*, COUNT(buttons.id) as button_total").order('button_total DESC')

更多关于 sql 计数的信息

于 2014-03-07T00:23:28.083 回答