La forma mas simple de hacer paginacion de resultados en rails es la siguiente(actualmente estoy usando Ruby on Rails 2.3.8 y RubyGem 1.3.7)
sudo gem source -a http://gems.github.com; sudo gem install mislav-will_paginate
config.gem 'mislav-will_paginate', :lib => 'will_paginate', :source => 'http://gems.github.com'
def index @personas = Persona.paginate(:per_page => 5, :page => params[:page]) end
En este caso se esta exigiendo una paginacion cada 5 resultados , ud puede/debe cambiar el numero de resultados que desea por pagina.
will_paginate @personas, :prev_label => "« Anterior", :next_label=> "Siguiente »"
Si deseas que tu paginacion use ajax agregue lo siguiente .
"#personas_url").html("<%= escape_javascript(render("personas")) %>");
$(function() {
$(".pagination a").live("click", function() {
$(".pagination").html("Cargando pagina...");
$.get(this.href, null, null, "script");
return false;
});
});