给will_paginate加上ajax效果

原文出处:http://railsontherun.com/2007/9/27/ajax-pagination-in-less-than-5-minutes

首先安装will_paginate

ruby script/install svn://errtheblog.com/svn/plugins/will_paginate
为了使用ajax,需要下载一个js库'lowpro'
http://svn.danwebb.net/external/lowpro/trunk/
添加lowpro.js和remote.js到public/javascript目录中
别忘记在视图中引入这两个js文件。
修改application.js(或者你正在使用的其他js文件),添加以下代码:
js 代码
  
  1. Event.addBehavior({   
  2.   'div.pagination a' : Remote.Link   
  3. })  
下一步修改action来响应ajax请求,不妨假设这里是index action。
  
ruby 代码
  1. def index   
  2. @photos = Photo.paginate(:all:conditions => ["photos.user_id = ?", current_user.id], :page => params[:page])   
  3.   respond_to do |format|   
  4.     format.html # index.html.erb   
  5.     format.js do  
  6.       render :update do |page|   
  7.         page.replace_html 'photos', :partial => "photos"  
  8.       end  
  9.     end  
  10.   end  
  11. end  
试一试,如何?完美么?

你可能感兴趣的:(JavaScript,html,Ajax,SVN,Ruby)