Initialize with options.
# File lib/dm-pager/pager.rb, line 38 def initialize options = {} @page_param = options.delete(:page_param) || :page @total = options.delete :total @per_page = options.delete :limit @current_page = options.delete @page_param @total_pages = total.quo(per_page).ceil @next_page = current_page + 1 unless current_page >= total_pages @previous_page = current_page - 1 unless current_page <= 1 end
Render the pager with the given uri and options.
User.page(2).pager.to_html('/users') User.page(2).pager.to_html('/users', :size => 3)
:size Number of intermediate page number links to be shown; Defaults to 7
# File lib/dm-pager/pager.rb, line 61 def to_html uri, options = {} return unless total_pages > 1 @uri, @options = uri, options @size = option :size raise ArgumentError, 'invalid :size; must be an odd number' if @size % 2 == 0 @size /= 2 [%(<ul class="#{Pagination.defaults[:pager_class]}">), first_link, previous_link, more(:before), intermediate_links.join("\n"), more(:after), next_link, last_link, '</ul>'].join end
Generated with the Darkfish Rdoc Generator 2.