will_paginate find out if I'm on the last page
Asked Answered
B

3

14

I'm trying to use will paginate with ajax, but I don't show the will_paginate buttons... instead I use a see more button, that makes an Ajax request and append the results to the page. what I'm trying to do is disable this see more button if I hit the last page of records!! Any idea how to know that the current page is the last page??

Belemnite answered 22/5, 2012 at 9:37 Comment(0)
Z
36
@collection.total_pages == @collection.current_page
Zaremski answered 22/5, 2012 at 10:10 Comment(3)
Is there a better API doc for will_paginate that can be used to find these methods? The one on Github falls kind of short.Chirk
You can also use @collection.next_page (or @collection.next_page.present?), which reads a bit nicer in my opinion.Jocundity
For a list of collection methods, see: rubydoc.info/gems/will_paginate/3.1.6/WillPaginate/…Overnight
C
2

Accessing the @collection.total_pages method will give you the total number of pages currently being returned. You can use this to evaluate against your active page using the @collection.current_page method. This is still applicable if you're reloading your collection on each expansion.

The implementation will be to use the AJAX call to replace the HTML content if this evaluation is true.

Cuthbert answered 22/5, 2012 at 11:23 Comment(0)
L
1

You can use next_page condition

@collection.next_page.present?
Lapel answered 22/5, 2019 at 6:53 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.