Kaminari 是一個(gè)強(qiáng)大的,可定制化的分頁(yè)引擎缠导,支持多種 ORM(ActiveRecord, mongoid)廉羔,多種 web 框架(Rails, Sinatra僻造,Grape)憋他,以及多種模版引擎(ERB, Haml, Slim).
####安裝
在 Gemfile 中添加以下代碼:
gem 'kaminari'
然后運(yùn)行 bundle 安裝。
####使用
以用戶的文章分頁(yè)來(lái)試驗(yàn)如何通過(guò)kaminari來(lái)實(shí)現(xiàn)分頁(yè)功能
在model中配置分頁(yè)數(shù)量, paginates_per表示每一頁(yè)的文章數(shù)量
class ?Article
...paginates_per ?5
end
在 Article的控制層中接收分頁(yè)參數(shù) params[:page]
def ?index
????????@user=User.find(params[:user_id])
????????@articles=@user.articles.page ?params[:page]
end
在視圖層添加paginate helper方法
<%=paginate @articles%>
一個(gè)簡(jiǎn)單的分頁(yè)功能就實(shí)現(xiàn)了髓削,是不是超級(jí)簡(jiǎn)單呢举瑰?