次のようなモデル(ここでは簡略化されています)があります。
class Customer < ActiveRecord::Base
attr_accessor :name
has_many :orders
end
class Order < ActiveRecord::Base
attr_accessor :description, :cost, :date
end
Postgres を使用しています。各顧客の最新の注文を含む単一の結果を返すクエリを実行する最良の方法は何ですか?
私がこのようなことをすると:
Order.order('date DESC').group('customer')
次に、Postgres エラーが発生します。
PGError: ERROR: column must appear in the GROUP BY clause or be used in an aggregate function
これを行う最もクリーンな方法は何ですか? 私は Rails の初心者なので、ここで重要な情報を忘れていたら教えてください。