Rails 4 por formulário de página para exibir limite de registro

Precisávamos de uma maneira de enviar um parâmetro por página, preservando os outros parâmetros no URL:

Crie um formulário com campos ocultos

= form_tag per_page_path, method: :get, data: { behavior: 'per-page-form' }
= hidden_field_tag :page, params[:page] if params[:page]
= hidden_field_tag :order, params[:order] if params[:order]
= hidden_field_tag :direction, params[:direction] if params[:direction]
= label_tag "Per Page"
= select_tag :per_page, options_for_select([10,20,50], params[:per_page].to_i), data: { behavior: "per-page" }

Ouça a alteração do campo de seleção e envie o formulário:

$ ->
$
('[data-behavior~=per-page]').change ->
form
= $('form[data-behavior~=per-page-form]').submit()