返回模型和连接模型的哈希计数在Rails中分组

时间:2013-01-21 07:17:05

标签: mysql ruby-on-rails-3 activerecord arel

假设我有两个模型,即客户和订单。订单有一个状态列。我试图避免N + 1问题,所以我希望一个查询返回Customer模型,并添加一个“列”,它是每个订单状态的哈希,其中包含属于该订单的计数。

class Customer < ActiveRecord::Base
  has_many :orders
end

class Order < ActiveRecord::Base
  belongs_to :customer
end

预期输出

#<Customer:0x007fb64596ba38> {
    :id => 1,
    :first_name => 'Bob',
    :email => 'test@test.com',
    :order_statuses_count: {shipped: 1, returned: 1, :processing: 0}           
}

如果有人比我预期的输出有更好的想法,请告诉我。

0 个答案:

没有答案