Ruby on Rails:每页的条目

时间:2012-08-08 08:50:41

标签: ruby-on-rails ruby search drop-down-menu

我有一个搜索页面,允许用户搜索许多不同的字段。单击搜索后,默认情况下,页面每页显示10个条目,可以使用will_paginate选择查看下一个10或选择页码。有一个下拉菜单,允许您选择用户每页看到的条目数。

我尝试了两段代码:

Results per page: <%= select_tag :per_page, options_for_select([10,20,50], :selected=>params[:per_page]),  { :onchange => "this.form.submit();"}   %></br>

Results per page: <%= select_tag :per_page, options_for_select([10,20,50], :selected=>params[:per_page]),  :onchange => "'#{request.query_string}&per_page=' + this.getValue()"  %></br>

例如,当第一个下拉菜单更改为20时,页面会立即再次搜索,但每页显示20个结果。

第二个下拉菜单允许您选择每页编号的条目,但要更改视图,您必须重新单击搜索。

我希望我的代码更像第一次下拉,但我认为重新搜索有点贵。有没有办法停止重新提交搜索但更改显示?

提前致谢

1 个答案:

答案 0 :(得分:1)

如果更改每页显示的项目数,则无论如何都必须进行重新查询(因为只有要显示的项目已从数据库加载)。如果您更改每页显示的项目,并且您在第2页,您会看到什么?项目10 - 60?因此,如果您更改每页的项目,您几乎总是也会切换到第一页,这无论如何都需要重新查询。

第二:似乎你想在javascript中重新加载数据。您调用以获取数据,但似乎对加载的数据不执行任何操作。