假设我有两个模型,客户和订单。订单有一个状态栏。我试图避免 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}
}
如果有人有比我预期的输出更好的主意,请告诉我。