当前位置: 首页 > 工具软件 > kaminari > 使用案例 >

kaminari分页插件的使用

汤昊
2023-12-01

前言:rails项目常用的分页插件一般有两个will_paginate与kaminari,

大部分项目以及老项目使用的是will_paginate,网上也有比较多的资料,

但使用过kaminari后感觉后,性能和兼容性更好。


1.添加gem,然后bundle install

gem 'kaminari'
2.得到结果集后
@areas = Area.all.page(params[:page])

<p><%= paginate @areas %></p>

这是最基本的用法。如需阅读官方文档请访问:https://github.com/amatsuda/kaminari

------------------------------------------------------------分割线-----------------------------------------------------------------------

进阶使用:自定义主题,不同的列表使用不同的样式,或者采用ajax分页

执行以下指令,生成kaminari默认的配置文件

rails generate kaminari:views default
会在views下生成kaminari的文件夹,里面有7个页签对应的文件。


1.使用rails自带ajax的时候,注意分页文件中的remote属性,默认的是remote=>remote,将其改为remote=>true,

则所有的链接页签将会添加data-remote=true属性,这样点击分页的时候,会调用对应方法的js.erb模板,实现局部刷新。

(比will_paginate方便多了,wil_paginate需要在页面加载时,自行给页签添加data-remote属性,也可能我对will_paginate不精通

2.使用不同的theme。在生成的views/kaminari文件夹下,

mkdir blue
cp  *.html.*  blue/
那么,blue就是一个主题,调用时
<p><%= paginate @areas, :theme => 'blue' %></p>
kaminari会自行调用blue下的文件进行分页。









 类似资料: