分页插件的运行环境(这里只列举rails和ruby):
Ruby >=2.0.0 Rails >=4.1
- install
gem 'kaminari'
2.执行以下命令,会在 config\initializers 下生成一个配置文件kaminari_config.rb
rails g kaminari:config
Kaminari.configure do |config|
# config.default_per_page = 25
# config.max_per_page = nil
# config.window = 4
# config.outer_window = 0
# config.left = 0
# config.right = 0
# config.page_method_name = :page
# config.param_name = :page
end
3.常用方法
User.page(2).per(5) #第二页,每页5条
User.limit(5) # 限制5条
4.model配置
class User < ActiveRecord::Base
paginates_per 5 #每页条数设定
max_paginates_per 100 #每页最大条数设定
end
5.View中的使用
= paginate @users
#会生成 => « First ‹ Prev ... 2 3 4 5 6 7 8 9 10 ... Next › Last »
这里就需要在 config/ locales/en.yml配置:
views:
pagination:
first: "« 首页"
last: "末页 »"
previous: "« 上一页"
next: "下一页 »"
truncate: "..."
« 首页 ‹ 上一页 ... 2 3 4 5 6 7 8 9 10 ... 下一页 › 末页 »
6.分页界面自定义样式
需要生成一些模板文件,执行以下命令:
rails g kaminari:views default
会在app/views/kaminari 生成相关文件
_paginator.html 总的入口文件
_page.html 对应页码链接
_first_page.html 首页
_last_page.html 末页
_prev_page.html 上一页
_next_page.html 下一页
_gap.html 空隙的显示,默认是中间的省略号(...)
可通过相关修改显示应用全局(如果想只针对部分修改,可对应views文件夹结构,创建 app/views/kaminari/xxx文件夹,把上述文件复制进去就行 )
相关参考:
github链接:https://github.com/kaminari/kaminari
参考:https://blog.csdn.net/Richar1/article/details/45691141