Rails 分页显示之will_paginate

分页显示是在RubyonRails中是一个常用功能,实现方式有很多种,rails也内建了对分页的支持,但是这里需要添加分页组件。

1.安装will_paginate

(1)在gemfile文件中添加gem"will_paginate"然后执行

$ bundle install

2.controller中添加如下方法

def manage_user
   @user = User.paginate(page: params[:page],per_page: 10)
  end

此方法是把从数据库中取出的内容分页显示,每页显示十个。

3.对应的视图文件添加如下内容

[email protected] do |user|
      %tr
        -i=i+1
        %td
          =i
        %td
          =user.name
        %td
          =link_to "删除", manager_destroy_path(user.name),method: :delete, data: { confirm: '您确定要删除'+user.name+'?' }
          =link_to "修改密码", manager_manager_modify_password_path(user.name)

这是分页显示的内容

4.添加翻页功能

%div(style="position:absolute;top:80%;right:10%")
      = will_paginate @user,:previous_label=> '上一页',:next_label=> '下一页'

写好后打开页面即可看到看到现在显示前10个用户了和翻页了,试着点击next,previous进行翻页

相关推荐