A really simple pagination library, heavily based on the agnostic branch of will_paginate.
Leaf supports pagination for collections responding to total_pages
, per_page
, previous_page
and total_entries
in Sinatra views out of the box.
It currently supports two renderers: Leaf::ViewHelpers::LinkRenderer
and Leaf::ViewHelpers::ListRenderer
gem install leaf
require 'rubygems' require 'sinatra' require 'leaf' include Leaf::ViewHelpers::Base # Needed to paginate any array # you’ll probably use something else. require 'leaf/array' get '/' do page = (params[:page]) ? params[:page] : 1 array = ('a'..'z').to_a haml :index, :locals => { :collection => array.paginate({ :page => page, :per_page => 5 }) } end __END__
Leaf is based on will_paginate which was originally written by PJ Hyett, who later handed over development to Mislav Marohnić. (The library was completely rewritten since then.)