Agile Web Development

Build it. Launch it. Love it.

Will Paginate

Pagination is just limiting the number of records displayed. Why should you let it get in your way while developing, then? This plugin makes magic happen. Did you ever want to be able to do just this on a model:

  Post.paginate :page => 1, :order => 'created_at DESC'

… and then render the page links with a single view helper? Well, now you can.

Some resources to get you started:

Example usage

Use a paginate finder in the controller:

    @posts = Post.paginate_by_board_id, :page => params[:page], :order => 'updated_at DESC'

Yeah, paginate works just like find — it just doesn’t fetch all the records. Don’t forget to tell it which page you want, or it will complain! Read more on WillPaginate::Finder::ClassMethods.

Render the posts in your view like you would normally do. When you need to render pagination, just stick this in:

    <%= will_paginate @posts %>

You’re done.


Repository git://
License Rails' (MIT)
Rating (194 votes)
Owner Mislav Marohnić
Created 14 February 2007


  • p-daddy
    6 July 2007

    great plugin. great documentation--clarity and wit! who could ask for more?

  • Avatar
    7 January 2008

    You can use willpaginate within Liquid templates with the willpaginateliquidized plugin:

  • Avatar
    Artem Vasiliev
    29 February 2008

    RSS feed on will_paginate source repository commits:

  • Avatar
    17 July 2008

    It's very useful plugin, easy to integrate with Ferret. OT: you should clear tags for this plugin...

  • Avatar
    Rudi V.
    1 August 2008

    This plugin rocks. Thanks.

  • Avatar
    29 October 2008

    is there any simple line command to install it

Add a comment