J'utilisai mislav_will-paginate ! Pour le passage à Rails 3 il faut modifier un peu son code :
Dans le Gemfile
gem 'will_paginate', '~> 3.0.pre2'
Dans le controlleur ceci
Product.paginate_all_by_visibility(true, :per_page => 10, :page
=> params[:page], :order => 'name')
devient
Product.where(:visibility => true)
.order('name').paginate(:per_page
=> 10, :page => params[:page])
Dans la vue rien ne change !