安装
在gemfile增加一行
gem 'kaminari', '0.14.1'
常用方法
在Model对象上使用.page()和.per()两个方法,就像.where()一样。
例如每页10个,取第二页数据
User.page(2).per(10)
如果是传参数的话,可以写成
User.page(params[:page]).per(20)
在View中使用,直接调用它提供的helper方法即可
<%= paginate @users %>
参数配置
全局参数设置
执行以下命令,会在config/initializers下生成一个配置文件kaminari_config.rb
rails g kaminari:config
这个文件控制着kaminari的全局设置,有以下参数可以定义
default_per_page 默认值25
page_method_name 分页方法的名称
param_name 分页参数的参数名,默认为param
window / outer_window / left / right 这四个参数都与分页显示有关,设定了显示页码标签的方式和数量。
分页界面定制
执行一下命令可以获取默认模版文件。目录在app/views/kaminari/下
rails g kaminari:views default
各个文件描述如下
_paginator.html.erb 这是总的入口文件,可以通过修改它来调整显示的整体结构
比如我不需要“首页”,”末页“这两个链接,那么我就在这个文件里面将对应的代码删除
_page.html.erb 对应页码链接
_first_page.html.erb / _last_page.html.erb 对应“首页”和“末页”的链接
_prev_page.html.erb / _next_page.html.erb 对应“上一页”和“下一页”的链接
_gap.html.erb 空隙的显示,默认是中间的省略号(...)
注意,不要修改文件名。
theme功能
在app/views/kaminari目录下创建一个文件夹,例如test,把默认的模版文件拷贝进去,修改模版文件的内容,就形成了个性化的样式。
view页面按下方写法即可调用个性样式。
<%= paginate @blogs, :theme=>'test' %>
源资源文档
https://github.com/edokeh/klog/tree/master/app/views/kaminari
相关推荐
**Ruby-Kaminari 分页库详解** 在Ruby on Rails开发中,当处理大量数据时,分页是一个必不可少的功能。Kaminari就是这样一个专门为Rails设计的高效、易用且高度可定制的分页库。它以其简洁的API和强大的功能赢得了...
Kaminari :: Mongoid Kaminari Mongoid适配器。安装将此行添加到您的应用程序的Gemfile中: gem 'kaminari-mongoid' 和捆绑。支持的版本Mongoid 3+用法参见。贡献欢迎在GitHub上发出拉取请求,为
NoBrainer Kaminari 适配器 kaminari-nobrainer 是一个适配器,使与很好地工作。 安装 包含在您的 Gemfile 中: gem 'kaminari-nobrainer' 像往常一样使用kaminari。 执照 麻省理工学院执照。
Kaminari Rspec 库 kaminari-rspec是一个 ruby gem,旨在简化用于分页的视图的规范编写安装只需将 gem 安装到您的系统中 gem install kaminari-rspec或者,如果您正在使用 Bundler,请将其添加到您的 gemspec ...
Bootstrap Kaminari视图 基本宝石,可快速默认包含与和兼容的主题 用法 确保您的gemfile包含 gem 'kaminari' gem 'bootstrap-kaminari-views' 使用主题渲染分页 = paginate @posts, :theme => 'twitter-bootstrap'...
Rails API可以通过Gem(如Kaminari或WillPaginate)轻松实现这些功能。 5. **版本控制**:API的版本控制很重要,Rails API允许你为不同版本的API创建独立的命名空间,确保向后兼容性。 6. **错误处理**:Rails API...
Kaminari是适用于现代Web应用程序框架和ORM的干净,强大,可自定义的开源分页器。 Kaminari非常干净,因为它不会全局污染Array,Hash,Object或AR :: Base。 它具有简单的基于范围的API和可自定义的基于引擎的I18n...
神成 基于范围和引擎的,干净,功能强大,可自定义和复杂的分页器,适用于...Kaminari支持多个ORM(ActiveRecord,DataMapper,Mongoid,MongoMapper),多个Web框架(Rails,Sinatra,Grape)和多个模板引擎(ERB,
你可以通过自定义分页助手来改变样式,或者使用如`kaminari-bootstrap`或`kaminari-bootstrap4`这样的插件来匹配Bootstrap框架。 7. **分页与Ajax** 如果你想实现无刷新分页,可以结合Ajax来更新内容。在控制器中...
添加Kaminari进行分页 分页的一些基本查询 # get records according to pages Post . page ( page_no ) # default limit is 11 and offset is 25 post = Post . page ( 2 ) . per ( 5 ) # per is used for set ...
电车道:: Admin 为您的应用程序快速创建管理面板!...gem 'bootstrap-kaminari-views' , github : 'kalashnikovisme/bootstrap-kaminari-views' , branch : :master gem 'state_machine_buttons' gem 'ckeditor' , '4
Rails提供了`kaminari`或`will_paginate`等插件实现分页,而`ransack`可以让用户通过复杂的查询条件过滤数据。 9. 测试:测试是API开发不可或缺的部分。Rails提供TDD(Test-Driven Development)工具如RSpec和...
Slack Ruby Bot服务器 在Ruby中通过Slack按钮集成构建完整的Slack机器人服务。 目录 这是什么? 一个包含Web服务器和RESTful API的库,该API为多个团队提供Slack机器人。...gem 'kaminari-mongoid' gem 'mo
12. **Kaminari** 和 **WillPaginate**:分页插件,帮助处理大量数据的显示。 13. **Ransack**:提供强大的搜索和过滤功能,让用户可以根据需要自定义搜索条件。 14. **SimpleForm** 和 **Formtastic**:简化Rails...
虽然will_paginate功能强大,但另一个流行的分页库Kaminari也是不错的选择。Kaminari提供了更简洁的API和更好的性能。开发者可以根据项目需求和团队偏好选择合适的分页插件。 总结,will_paginate是Rails开发中不可...
Kaminari基于范围和引擎的,干净,功能强大,可自定义和复杂的分页器,适用于现代Web应用程序框架和ORMs功能Clean不全局污染数组,哈希,对象或AR :: B Kaminari基于范围和引擎的,干净,强大,可自定义的适用于现代...
返回的结果由 kaminari 分页。 安装 添加到 Gemfile: gem 'pretty_search', :git => 'git@github.com:shooma/pretty_search.git' 还要确保您的 Gemfile 中有以下 gem: gem 'kaminari' gem 'haml', '~> 4.0.5'...
在Rails应用程序中使用Bootstrap,Devise,Kaminari gem 技术栈 后端: Ruby2.4 Rails 5.2.x 数据库:Postgres 9.6 宝石:Devise,Kaminari,Bootstrap 前端: HTML,CSS,Javascript,jQuery 引导程序(3.x...
# gem 'kaminari' # gem 'pagy' gem 'pager_api' 然后执行: % bundle 组态 此步骤是完全可选的 gem附带有一个安装程序,供您配置它,例如,在分页处理程序之间切换或是否包含Link标头或元信息。 要安
5. **与 Kaminari 对比**:虽然 `kaminari` 也是另一个常见的分页插件,但 `will_paginate` 更为成熟,社区支持更广泛,对于大多数项目来说,`will_paginate` 是首选。 使用 `will_paginate` 的步骤大致如下: 1. ...