John Merlino wrote in post #989291:
>
> ((@all_resources.size - 1) / @limit).to_i + 1
>
> What does the size method do and why add one at the end?
>

Suppose 100 records, with a page size of 30

num_pages = ((100-1)/30)
num_pages = 99/30
num_pages = 3.3
num_pages = 3 (to_i)
num_pages = 4

3 full pages of 30 records, and 1 page with 9 records

Suppose 90 records...
((90-1)/30).to_i + 1 = 3, 3 full pages

It's just some math hijinks to make sure any partial page isn't missed 
in the page count.

The slice(offset,limit) is the elegant part. Start at the "offset", and 
return "limit" items.

On page 2, the offset is 1*25, skipping the records that would be 
returned on page 1, and returns the next page's records.

-- 
Posted via http://www.ruby-forum.com/.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to