Skip to content

Instantly share code, notes, and snippets.

@isaacbowen
Created August 30, 2011 21:37
Show Gist options
  • Star 20 You must be signed in to star a gist
  • Fork 24 You must be signed in to fork a gist
  • Save isaacbowen/1182136 to your computer and use it in GitHub Desktop.
Save isaacbowen/1182136 to your computer and use it in GitHub Desktop.
extends will_paginate to play well with Twitter's Bootstrap
# config/initializers/will_paginate.rb
module WillPaginate
module ActionView
def will_paginate(collection = nil, options = {})
options[:renderer] ||= BootstrapLinkRenderer
super.try :html_safe
end
class BootstrapLinkRenderer < LinkRenderer
protected
def html_container(html)
tag :div, tag(:ul, html), container_attributes
end
def page_number(page)
tag :li, link(page, page, :rel => rel_value(page)), :class => ('active' if page == current_page)
end
def previous_or_next_page(page, text, classname)
tag :li, link(text, page || '#'), :class => [classname[0..3], classname, ('disabled' unless page)].join(' ')
end
end
end
end
@MattMSumner
Copy link

This is delicious. Thanks!

@shishirsharma
Copy link

This does not work with will_paginate (3.0.4) and sinatra.

@shishirsharma
Copy link

Checkout this gist. This works with Bootstrap 3 and Will_paginate 3.0.4 and Sinatra https://gist.github.com/expertmind/6410029

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment