Kaminari 是一个强大的,可定制化的分页引擎,支持多种 ORM(ActiveRecord, mongoid),多种 web 框架(Rails, Sinatra,Grape),以及多种模版引擎(ERB, Haml, Slim).
####安装
在 Gemfile 中添加以下代码:
gem 'kaminari'
然后运行 bundle 安装。
####使用
以用户的文章分页来试验如何通过kaminari来实现分页功能
在model中配置分页数量, paginates_per表示每一页的文章数量
class Article
...paginates_per 5
end
在 Article的控制层中接收分页参数 params[:page]
def index
@user=User.find(params[:user_id])
@articles=@user.articles.page params[:page]
end
在视图层添加paginate helper方法
<%=paginate @articles%>
一个简单的分页功能就实现了,是不是超级简单呢?