7

我正在关注 Kaminari 的 railscast (http://railscasts.com/episodes/254-pagination-with-kaminari)。但我坚持使用控制器部分。

在我的控制器中,我有这样的东西:

def index
  @articles = (params[:mine] == "true") ? current_user.articles : Article.search(params[:search])

  respond_to do |format|
    format.html
    format.json { render json: @articles }
  end
end

现在我不确定如何链接方法、顺序、页面和每个,就像在截屏视频中一样.order("name").page(params[:page]).per(5)。我继续在 Array 中获取 no 方法“order”。我知道我不能调用数组上的方法,但我还能如何链接它们?

4

1 回答 1

19

您可以在数组上使用 Kaminari:

Kaminari.paginate_array(@articles).page(params[:page]).per(5)

文档中:

Kaminari 提供了一个 Array 包装类,该类将通用 Array 对象适配到paginate视图助手。但是,paginate帮助程序不会自动处理您的 Array 对象(这是有意和设计的)。Kaminari::paginate_array方法将您的 Array 对象转换为接受page方法的可分页数组。

于 2012-08-05T16:36:24.583 回答