Jak*_*kub 3 ruby-on-rails kaminari ruby-on-rails-4
我正在尝试使用Kaminari分页来设置一个框,用户可以在其中设置每页显示的项目数.我有一个问题,因为我得到错误`undefined method to_i'for:limit:Symbol你的意思是?to_s
我以下一个方式设置了它:
控制器:
def index
@books = Book.order(:name).page(params[:page]).per(:limit)
end
Run Code Online (Sandbox Code Playgroud)
视图:
<div class="pull-left">
<%= form_tag controller_name, method: :get, id: 'limit_form' do %>
<div class="select-tag">
Show <%= select_tag :limit, options_for_select([5, 10, 15, 20], selected: params[:limit] || 10), onchange: "$('#limit_form').submit();" %> documents per page
</div>
<% end %>
</div>
Run Code Online (Sandbox Code Playgroud)
我想你忘了引用params- 你的控制器方法不知道是什么:limit,因为它只是你的参数中的一个关键.
而不是这个:
.per(:limit)
Run Code Online (Sandbox Code Playgroud)
试试这个:
.per(params[:limit])
Run Code Online (Sandbox Code Playgroud)