如何在index中使用kaminari组件进行分页(Pagination)
TODO:
上图是加了分页之后的效果。
kaminari的优点及原理:它的基本原理是: 给出第几页,每页多少条记录,就能在数据库中查找对应的记录。能够快速查询数据库。
操作步骤:(一个rails 4 的项目中)
1.修改Gemfile
gem 'kaminari'
2.bundle install
3.对应的controller的index中添加代码:
@articles = Article.where("category_id = ?", params[:category_id]).page(params[:page]).per(20)
4.在view中:
<%= paginate @articles %>
5.可以通过下列命令生成全局配置文件config/initializers/:
$ bundle exec rails g kaminari:config
6.分页效果已经出来了,但是都是英文的,我们要把它换成中文。在Rails.root/config/locales 中,增加一个语言文件(zh-CN.yml)
zh-CN: views: pagination: first: "« 首页" last: "末页 »" previous: "‹ 上页" next: "下页 ›"
7.接下来在 config/application.rb中加入这样一行代码:
config.i18n.default_locale = "zh-CN"
8.重启服务器 就能看到分页的 效果了。