使用 will_paginate 進行分頁和簡單查詢
在命令列下使用 gem install will_paginate 命令,出現下面結果安裝成功
開啟 books_controller.rb (你自己的控制器)
注釋掉尋找全部的方法,使用下面的方法,已經整合根據title進行查詢
Ruby代碼
- #@books = Book.all
- @books = Book.paginate :page => params[:page],
- :per_page => 2,
- :conditions => ["title like ?", "%#{params[:search]}%"]
- respond_to do |format|
- format.html # index.html.erb
- format.xml { render :xml => @books }
- end
- end
#@books = Book.all@books = Book.paginate :page => params[:page], :per_page => 2, :conditions => ["title like ?", "%#{params[:search]}%"] respond_to do |format| format.html # index.html.erb format.xml { render :xml => @books } end end
開啟對應的 books_controller.rb 視圖頁面 index.html.erb
添加查詢功能
Html代碼
- <% form_tag books_path, :method => 'get' do %>
- <p>
- <%= text_field_tag :search, params[:search] %>
- <%= submit_tag "Search", :name => nil %>
- </p>
- <% end %>
<% form_tag books_path, :method => 'get' do %> <p> <%= text_field_tag :search, params[:search] %> <%= submit_tag "Search", :name => nil %> </p> <% end %>
及分頁功能
Html代碼
- <div>
- <div >
- <%= page_entries_info @books %>
- </div>
- <%= will_paginate @books, :container => false %>
- </div>
<div> <div > <%= page_entries_info @books %> </div> <%= will_paginate @books, :container => false %> </div>
開啟環境檔案 environment.rb 在end後添加
Ruby代碼
- require "will_paginate"
require "will_paginate"
運行效果如下
本文轉自:http://95700900.javaeye.com/blog/573308