分頁gem kaminari

分頁插件的運(yùn)行環(huán)境(這里只列舉rails和ruby):

Ruby >=2.0.0  Rails >=4.1
  1. install
gem 'kaminari'

2.執(zhí)行以下命令,會(huì)在 config\initializers 下生成一個(gè)配置文件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 #每頁條數(shù)設(shè)定
   max_paginates_per 100 #每頁最大條數(shù)設(shè)定
end

5.View中的使用

= paginate @users
#會(huì)生成 =>  ? First ? Prev ... 2 3 4 5 6 7 8 9 10 ... Next ? Last ?

這里就需要在 config/ locales/en.yml配置:

 views:
    pagination:
      first: "&laquo; 首頁"
      last: "末頁 &raquo;"
      previous: "&laquo; 上一頁"
      next: "下一頁 &raquo;"
      truncate: "..."
? 首頁 ? 上一頁 ... 2 3 4 5 6 7 8 9 10 ... 下一頁 ? 末頁 ?

6.分頁界面自定義樣式
需要生成一些模板文件,執(zhí)行以下命令:

 rails g kaminari:views default

會(huì)在app/views/kaminari 生成相關(guān)文件


image.png
_paginator.html  總的入口文件
_page.html 對(duì)應(yīng)頁碼鏈接
_first_page.html 首頁
_last_page.html 末頁
_prev_page.html 上一頁
_next_page.html 下一頁
_gap.html 空隙的顯示,默認(rèn)是中間的省略號(hào)(...)

可通過相關(guān)修改顯示應(yīng)用全局(如果想只針對(duì)部分修改,可對(duì)應(yīng)views文件夾結(jié)構(gòu),創(chuàng)建 app/views/kaminari/xxx文件夾,把上述文件復(fù)制進(jìn)去就行 )

相關(guān)參考:
github鏈接:https://github.com/kaminari/kaminari
參考:https://blog.csdn.net/Richar1/article/details/45691141

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,628評(píng)論 19 139
  • afinalAfinal是一個(gè)android的ioc,orm框架 https://github.com/yangf...
    passiontim閱讀 15,889評(píng)論 2 45
  • 用到的組件 1、通過CocoaPods安裝 2、第三方類庫安裝 3、第三方服務(wù) 友盟社會(huì)化分享組件 友盟用戶反饋 ...
    SunnyLeong閱讀 15,195評(píng)論 1 180
  • 十幾歲的懵懂無知;二十幾歲的活力四射;三十歲的拼搏奮斗;四十幾歲的成熟厚重;五十歲的歲月靜好;六十幾歲的夕陽西下....
    精專利君閱讀 509評(píng)論 0 0
  • 雖然我們已經(jīng)同居了半年,我們倆一直都沒發(fā)生任何事情,直到生日那天,我跟你說:今天是我生日,我們玩?zhèn)€游戲,一個(gè)臉紅心...
    回到冰點(diǎn)閱讀 529評(píng)論 0 0

友情鏈接更多精彩內(nèi)容