# Based on https://gist.github.com/1182136 | |
class BootstrapLinkRenderer < ::WillPaginate::ActionView::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 gap | |
tag :li, link(super, '#'), :class => 'disabled' | |
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 | |
def page_navigation_links(pages) | |
will_paginate(pages, :class => 'pagination', :inner_window => 2, :outer_window => 0, :renderer => BootstrapLinkRenderer, :previous_label => '←'.html_safe, :next_label => '→'.html_safe) | |
end |
This comment has been minimized.
This comment has been minimized.
In the latest will_paginate, the correct superclass for the BootstrapLinkRenderer is instead:
|
This comment has been minimized.
This comment has been minimized.
I'd update the gist to reflect this, but I'm in a rush right now. :-) |
This comment has been minimized.
This comment has been minimized.
Thanks, much appreciated. |
This comment has been minimized.
This comment has been minimized.
fixed here: https://gist.github.com/1350826 |
This comment has been minimized.
This comment has been minimized.
Doh, if I'd seen the "Edit" button, I'd have fixed it right away. More coffee needed... Cheers! |
This comment has been minimized.
This comment has been minimized.
Do I have to call this helper in a different way? Or should it just work? Currently when I put this in my application helper file and restart my server I do not get the pagination wrapped in the ul and li elements that bootstrap likes. Thanks! |
This comment has been minimized.
This comment has been minimized.
See the |
This comment has been minimized.
This comment has been minimized.
Thanks for the quick answer Steve! I have replaced "will_paginate @feeditems" in my view with <%= page_navigation_links @feed_items %> I get an error of: NotImplementedError in Pages#home Forgive my ignorance. Just now making my first rails app. Thanks for any help! |
This comment has been minimized.
This comment has been minimized.
Yep, see @thatfunkymunki's comments and modified version above. I should really go ahead and update this gist to incorporate his changes. |
This comment has been minimized.
This comment has been minimized.
Thanks much for your help! |
This comment has been minimized.
This comment has been minimized.
<%= page_navigation_links @users %> worked for me! |
This comment has been minimized.
This comment has been minimized.
@fellytone84 - Glad it worked for you. I've updated this gist to directly reflect @thatfunkymunki's fixes here... |
This comment has been minimized.
This comment has been minimized.
@purcell I've just added classname option to page_navigation_links, now it can support Bootstrap 2.0's flexible alignment option: .pagination-center, .pagination-right, default option is pagination. |
This comment has been minimized.
This comment has been minimized.
Thanks, works great! |
This comment has been minimized.
This comment has been minimized.
how do you specify that a link is remote, and how about specifying the params hash? There's no way to pass in those parameters to "page_navigation_links". For example, I need to pass in=> :remote => true. |
This comment has been minimized.
This comment has been minimized.
@bertomartin There's nothing stopping you from changing the definition of |
This comment has been minimized.
This comment has been minimized.
@purcell, I tried doing that. Had a problem though, but I'll look into it again (very late last night). Thanks for this script. |
This comment has been minimized.
This comment has been minimized.
Very nice. Thanks! |
This comment has been minimized.
This comment has been minimized.
worked out well. thanks! |
This comment has been minimized.
This comment has been minimized.
Worked like a charm, thanks! |
This comment has been minimized.
This comment has been minimized.
this was great. i didn't want to use a gem, and this gist just nails it. thanks a lot! |
This comment has been minimized.
This comment has been minimized.
It worked like a charm! Thank you! But one thing, all this is not about LESS or SASS. I'm working with SASS and no problem at all. Maybe you can consider to change gist's title. |
This comment has been minimized.
This comment has been minimized.
This worked beautifully thanks! |
This comment has been minimized.
This comment has been minimized.
Thank you! It works perfect! |
This comment has been minimized.
I get a NotImplementedError when I use this, relevant part of stack trace:
Is this a version error (i.e. should i go down some versions in will_paginate)?