私は25年以上にわたって年間約100のオブジェクトを収集しています。特定のオブジェクトにドリルダウンするのが簡単になるように、ページごとに年ごとにリストするのが良いでしょう。固定数のアイテムではなく、年ごとにRailsコレクションを改ページするためのプラグインまたは宝石はありますか?たぶん月でさえ?これを行うためにwill_paginateを適応させることは可能でしょうか?年ごとに結果を改ページできますか?
EDIT:
ss = Services.all.group_by { |s| s.date_of_service.year }
これは私がキーでページ付けすることができ、その上注文したハッシュを生成します。
ss.keys.each { |k| p ss[k].count }
私はRails 2.xです。私は 'named_scope:year、lambda {| y | {:conditions => "YEAR(date_of_service)=#{y}"}} 'の2番目の部分ですが、これはすべて私が最初に思いつくことができます。確かに良い方法があります.'def self.years; ys = []; Service.all.collect {| s | ys << s.date_of_service.year}; ys.uniq!最後に –
私はrails2の経験はありませんが、 'lambda {find(:select => 'year'、:group => 'year')}' – bassneck
Coolを使うことができるはずです。私は ':select'がRails 2で利用可能であることを知りませんでした。あなたのメソッドは、単一の属性を持つオブジェクトのリストを取得します。私はそれが属性を返すと思った。私はクラスメソッドが私に与える年のリストがほしいと思う。とにかく、私はこれを見つけました。多分私はそれからいくつかのマイレージを得ることができます:http://stackoverflow.com/questions/3488534/using-lambda-in-find-in-rails –