1

Customer と Order という 2 つのモデルがあるとします。注文にはステータス列があります。N+1 の問題を回避しようとしているので、その注文に属するカウントを持つ各注文ステータスのハッシュである「列」が追加された Customer モデルで 1 つのクエリを返す必要があります。

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}           
}

誰かが私の予想よりも良いアイデアを持っている場合は、お知らせください。

4

0 に答える 0