Paginación en Ruby on Rails

Añadimos la gema al Gemfile:

gem "will_paginate"

 

Instalamos:

bundle install

 

Ahora si queremos paginar los resultados lo implementamos en el controlador:

    @articles = Article.paginate({page: params[:page], per_page:1}).publicados.ultimos

 

Si quisieramos ver los resultados en la vista lo llamariamos asi:

http://localhost:3000/articles?page=2

 

Ahora en la vista añadimos el control de la paginacion:

<%@articles.each do |article|%>
  <h1><%= link_to article.title, article %></h1>
  <div>
    <%=article.body %>
  </div>
<% end %>

<%= will_paginate @articles %>

 

Y nos crea todo el control visual automáticamente: