-
Notifications
You must be signed in to change notification settings - Fork 864
Home
Mislav Marohnić edited this page Jun 7, 2017
·
8 revisions
This is the official home for will_paginate library; a collection of extensions for the database layer that enable paginated queries, and view helpers for popular frameworks that render pagination links. With proper combination of view helpers and CSS styling, the final result can look like this:
To get started, see Installation instructions.
## perform a paginated query:
@posts = Post.paginate(:page => params[:page])
# or, use an explicit "per page" limit:
Post.paginate(:page => params[:page], :per_page => 30)
## render page links in the view:
<%= will_paginate @posts %>
And that's it! You're done. You just need to add some CSS styles to make those pagination links prettier.
You can customize the default "per_page" value:
# for the Post model
class Post
self.per_page = 10
end
# set per_page globally
WillPaginate.per_page = 10
# paginate in Active Record now returns a Relation
Post.where(:published => true).paginate(:page => params[:page]).order('id DESC')
# the new, shorter page() method
Post.order('created_at DESC').page(params[:page])
# classic sinatra app style
require "sinatra"
require "will_paginate"
# you can now use `will_paginate` helper in your views
Or:
require "sinatra/base"
require "will_paginate/view_helpers/sinatra"
class MyApp < Sinatra::Base
register WillPaginate::Sinatra
end
- Installation instructions
- API documentation
- Differences between v2.3 - v3.0
- Troubleshooting or Report bugs
- Simple search functionality
- Translating output (i18n)
- Browse the source code
- See the recent commits