これからのpaginate。

Rails2.0では今まで使ってたpaginateが無くなるので、別途プラグインが必要。次の記事で紹介されてたpaginating_findを使ってみました。
徒然なる開発メモ : will_paginate or paginating_find
プラグインとしてインストールしたら、今までのこんな感じのコードを

@foo_pages, @foos = paginate(:foo, :conditions=>[....], :order => ...., :per_page => 20, 

こんな風に書き換える。

@foos = Foo.find(:all, ::conditions => [...], :order => ...., :page => {:size =>20, :current => params[:page]})

ページ移動リンクはこんな風に書く。

<%= link_to "前へ", {:page => @foos.previous_page} if @foos.previous_page? %>
	
<%= paginating_links(@foos, :window_size => 20) %>

<%= link_to "次へ", {:page => @foos.next_page} if @foos.next_page? %>

これで警告も出なくなってRails2.0でも安心。