首先,安装will_paginate包,在这里。我在gemfile 包加入再运行bundle就行
(1)
a 在administrators_aontroller 中加入以下代码,实现分页并规定每页的条数
(3)加入搜索:
将products_controller.rb的index方法修改为
Rails代码
(1)
a 在administrators_aontroller 中加入以下代码,实现分页并规定每页的条数
Rails代码
@users = User.paginate :page => params[:page], :per_page => 10
b 在页面上也要添加以下代码,才能在页面上显示出来
Rails代码 <%= will_paginate @users,prev_label=> '上一页',:next_label=> '下一页' %>
写好后打开页面即可看到看到现在显示前10个用户和翻页了,试着点击next,previous进行翻页
(2)统计信息:
共<%=@products.total_entries%>条, 共<%=@products.page_count %>页,当前第<%= @products.current_page%>页.(3)加入搜索:
将products_controller.rb的index方法修改为
Rails代码
@products = Product.paginate :page => params[:page], :per_page => 10, :conditions => ["name like ?", "%#{params[:search]}%"]
//注意在加入搜索条件时的写法,这样可以避免sql注入,提高安全性
在index.rhtml适当位置加入:
Rails代码
<% form_tag products_path, :method => 'get' do %>
<p>
<%= text_field_tag :search, params[:search] %>
<%= submit_tag "Search", :name => nil %>
</p>
<% end %>
//这里注意,:method => 'get'必须指定, submit_tag的:name属性设为nil,避免在url中出现不必要的内容