This fork updates the will_paginate-liquidized plugin to work with WillPaginate 3.0.
Changes to the original:
- the liquid method has been renamed to will_paginate from will_paginate_liquid.
Ongoing issues with this project include:
- currently has only been tested within my own project running Rails 3.0.3. needs further testing on 2.2.x and 2.3.×.
What do you need?
- Rails >= 2.2, 3.0
- Liquid >= 2.0.0 (as a gem or plugin)
- Will-Paginate >= 3.0 (as a gem or plugin)
Rails 2:
script/plugin install https://github.com/tronfu/will_paginate-liquidized.git
Rails 3:
rails plugin install https://github.com/tronfu/will_paginate-liquidized.git
In your controller you might have something like this;
class MoviesController < ApplicationController # GET /movies # GET /movies.xml def index @movies = Movie.all.paginate(:page => params[:page], :per_page => 10) respond_to do |format| format.html # index.html.erb format.xml { render :xml => @movies } end end end
In your view put something like this in movies/index.html.erb;
<%= Liquid::Template.parse("{{ movies | will_paginate }}").render({'movies' => @movies}, :registers => {:controller => @controller}) %>
NOTE: you must remember to pass the current controller in rendering (:registers). If anyone can think of a way around this let me know.
You won’t get any pagination links until you exceed 10 (per_page setting defined in controller action). You can also pass the following other optional arguments to the will_paginate_liquid method.
{{ movies | will_paginate : 'anchor', 'prev_label', 'next_label' }} anchor: apply a #anchor to all generated urls in the pagination prev_label: label for the previous page button next_label: label for the next page button
Registers a new filter tag for Liquid to access will_paginate using a custom LinkRenderer so it can reference the @controller from the current liquid context[:registers]. Uses ActionView::Helpers::UrlHelper, ActionView::Helpers::TagHelper for constructing the pagination links.
Who’s who?
- Updated by Tron Fu
- Authored by Matthew Hutchinson
- Modified from the original plugin at Artweb Design
- Will-Paginate by mislav
- Liquid by tobi
Right now this script is provided without warranty, or support from the author.
Will Paginate Liquidized by Matthew Hutchinson is licensed under a Creative Commons Attribution 2.0 UK: England & Wales License.