Sorted is a simple object that will take an sql order string and a url sort string to let you sort large datasets over many pages (using will_paginate or kaminari) without loosing state.
<img src=“https://secure.travis-ci.org/mynameisrufus/sorted.png” />
gem 'sorted', '~> 0.4.2'
Generate a sorted link with the email attribute:
link_to_sorted "Email", :email
Using the sorted method with the optional default order argument:
@users = User.sorted(params[:sort], "email ASC").page(params[:page])