私は3つのモデルを持っています:
class Update
attr_accessible :object_id, :object_type
belongs_to :object, :polymorphic
default_scope order('created_at DESC')
end
class Document
has_many :updates, as: :object
end
class Report
has_many :updates, as: :object
end
ここで、sql または Active Record クエリ インターフェイスを使用して、各オブジェクトの最新の更新を取得できるようにしたいと考えています。
私は次のようなことをするだろうと考えていました:
Update.group(:object_id).group(:object_type)
確かに、オブジェクトごとに 1 つの更新しか提供されませんが、常に最新の更新であるとは限らず、その理由はわかりません。
グループはグループからランダムなレコードを選択するだけですか? 最新の更新プログラムが確実に選択されるようにする簡単な方法はありますか?