I have this problem: user can select some params from a form:

<% form_tag({:action => "view"}, :method => "get", :target =>
"_blank") do %>
<% end %>

In method view of controller:

@items = Item.paginate :all, :include => ...., :conditions
=> ....., :page => page, :order => ......, :per_page => 10

In html view:

<%= will_paginate @items %>

Work very good if user select only one param (form send to controller
only one param), but if he select more params the result is ok only
for first page. Next pages lose all params except one (selected by
user and visible in query string). Can you help me?

Thank you

Look at the docs for will_paginate and check out the :params option.


Rob Biedenharn http://agileconsultingllc.com

I tried use this but don't work:

<%= will_paginate @items, :params => params %>

I also tried write this:

<%= will_paginate @items, :params => {:params => {'PARAM1' => params
                                                  'PARAM2' => params
                                                  'PARAM3' => params
[:PARAM3]} %>

but ... don't work. The unique that works is this:

<%= will_paginate @items, :params => {:params => {'PARAM1' => params
[:PARAM1]} %>

Why? I don't understand