rails 3,Kaminari为一个简单的数组分页

Swa*_*kar 33 ruby-on-rails kaminari

为了对一个公共阵列进行分页,我得到了这个解决方案

@arr_name = Kaminari.paginate_array(@arr_name).page(params [:page]).per(PER_PAGE_RECORDS)

PER_PAGE_RECORDS 是一个根据分页需要的值的变量.

任何更好的想法?

也有一个使用分页的ajax调用可以使用这个,

在你看来,

将id添加到div选项卡

div id="paginate"
Run Code Online (Sandbox Code Playgroud)

在里面

<%= paginate @arr_name,:remote => true%>

并在js响应文件中,

$('#paginate').html('<%= escape_javascript(paginate(@arr_name,:remote => true).to_s)%>');

所以你的请求将是AJAX.

谢谢.

小智 65

这是使用Kaminari对数组对象进行分页的唯一可用辅助方法.另一种选择是,如kaminari wiki页面中的建议解决方案,将实例方法添加到数组对象.

如果您正在尝试基于ActiveModel返回类型的公共解决方案(.all返回数组并且.where返回ARL),则以下是一种解决方法.

unless @arr_name.kind_of?(Array)
  @arr_name = @arr_name.page(params[:page]).per(PER_PAGE_RECORDS)
else
  @arr_name = Kaminari.paginate_array(@arr_name).page(params[:page]).per(PER_PAGE_RECORDS)
end
Run Code Online (Sandbox Code Playgroud)

  • 好的解决方案 只是一个小建议@Sethupathi.最好的做法是使用'if else'而不是'除非':)干杯! (11认同)