2012-08-05 93 views
5

我正在关注Kaminari的railscast(http://railscasts.com/episodes/254-pagination-with-kaminari)。但我坚持控制器部分。Rails 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'。我知道我不能调用数组上的方法,但我还能如何链接它们?

回答

17

您可以在阵列,可以使用雷:

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

documentation

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

+0

工作就像一个魅力! – maru 2012-08-05 16:55:31