正常分页:
在rails3中,用will_paginage有两种方式,第一种就是用plugin形式,安装方法:
这里有个wiki关于安装的说明,https://github.com/mislav/will_paginate/wiki/installation,这里我只是想说一下关于这个插件的配置参数。首先,如果你是用插件安装的,那么找到vendor/plugins/will_paginate/lib/will_paginate/view_helpers.rb,这个helper就是这个插件的关于现实的helper,
@@pagination_options = { : class => ' pagination ' , : prev_label => ' 上一页 ' , #这个一般是用在我们中文网站上的时候需要进行改动,默认是 << Previous : next_label => ' 下一页 ' , #这个一般是用在我们中文网站上的时候需要进行改动,默认是 Next >> : inner_window => 4 , # inner_window 控制显示当前页临近的多少个链接 ,默认是4 : outer_window => 1 , # outer_window 控制显示首/末页临近的多少个链接,默认是1 :page_links => false, # 如果是false的时候,只显示上一页和下一页 (默认是 true) : separator => ' ' , # 这个参数是用来设置页码之间 的分隔符的,用空格或者(|)或者其他的都可以 : param_name => : page , #这个参数是用来我们点击页码连接的时候传递的参数的名称,一般不用改动 :class => 'pagination' , #这个是用来给分页的元素家heml的类名的,可以通过这个类名进行样式布局。 }
以上说的是你以插件的形式安装的,如果你用的而是rubygems形式安装的,那么这个配置你就需要到配置文件里面去改了,如果你的项目时2.x的,那么你的配置文件的改动应该是在config/environment.rb里面,加上类似于这样的几句,来进行相关的默认修改:
1. WillPaginate::ViewHelpers.pagination_options[ :class ] = "yourclass"
2. WillPaginate::ViewHelpers.pagination_options[:previous_label ] = "前一页"
3. WillPaginate::ViewHelpers.pagination_options[:next_label ] = "后一页"
如果你的项目时3.0以上的版本的话,那么你的这个配置修改就要到 config/initalizer下新建一个文件(例如:will_paginate.rb),在这个文件里面加上类似于上面的三句的配置,来进行修改。
用法:
1、 在config文件中配置 gem ‘will_paginate’
2、 (控制器)在要用到的分页功能的查询语句后面添加
:.paginate(:page => params[:page], :per_page => 3):page是页面接收的参数,:per_page是页面要显示记录数;
3、页面在要显示的地方加上一句:<%= will_paginate @comments %>
下面是例子:
AJAX分页:
1、在application_heler.rb文件中添加:
def will_paginate_remote(paginator, options={}) function = options.delete(:after) update = options.delete(:update) url = options.delete(:url) str = will_paginate(paginator, options) =begin if str != nil str = str.gsub(/href="(.*?)"/) do "href=\"#\" onclick=\"jQuery.ajax('#{(url ? url + $1.sub(/[^\?]*/, '') : $1)}',{ method: 'get', dataType: 'html', success: function(data){ alert('---------'); $('##{update}').html(data); } })\"" end.html_safe end =end str.scan(/href="(.*?)"/).flatten.uniq.each do |a| test_url = url ? url + a.sub(/[^\?]*/, '') : a str.gsub!("href=\"#{a}\"") do "href=\"#\" onclick=\"jQuery.ajax('#{test_url}',{ method: 'get', dataType: 'html', success: function(data){ $('##{update}').html(data); } })\"" end end str.html_safe end
2、页面写法:
<%= will_paginate_remote(@purchases, :update=>'admin_purchase_list', :params => params)%>
相关推荐
1-JSP+JDBC_假分页,1-JSP+JDBC_假分页,李兴华的笔记!!!
文件夹分页Q-Dir_Installer_x64
通用分页存储过程--UP_GetRecordByPage 通用分页存储过程--UP_GetRecordByPage
VMPool[2011-07-17_1_分页式虚拟内存管理,内存池].rar
java 编写的sqlserver快速分页通用类,处理sqlserver的sql语句,从中间分开记录集,分页速度有了很大的提高。使用方法说明中有详细描述
easyui插件的支持日期汉化,分页汉化,form表单提示汉化。
JSP+JDBC_假分页\\1-JSP+JDBC_假分页_.wmv
分页插件--pagination
p_Fields IN VARCHAR2, --对象列 p_ObjName IN VARCHAR2, --表名(这里可以为视图... p_IsPage NUMBER, --是否需要分页 v_Cur OUT PKG_Sys_CommQuery_GetPageList.CUR_Sys_CommQuery_GetPageList --返回的结果集
java web分页效果,JAVA+Servlet+web实现。功能很好,很全。
从数据库获得数据,显示到页面。功能相当强大,支持直接生成excel等格式,支持排序等,但似乎不支持分页显示
2-JSP_JDBC_真分页(基于MySQL数据库分页).rar
实现基于对话框的分页功能,不同的界面能够实现不同的功能。相当于属性页对话框。
mybatis的分页插件pagehelper-fix+文档
X.PagedList.Mvc.Core分页插件中Ajax分页功能是结合jquery.unobtrusive-ajax.js中的方法实现的,jquery.unobtrusive-ajax.js,被大量的开发者高频率的使用,所以我对X.PagedList.Mvc.Core分页插件的健壮性就没有了...
分页标签, 分页标签, 分页标签,
jspPageControlor分页插件是千里web架构实验室成员--刘捷开发的插件,用来解决jsp程序设计中分页所带来的不便,让程序开发者轻松的实现分页功能。
一个好用的js分页插件,能够较快地实现分页功能。资源中包括,css,js 样例等
用于解决easyui的英文显示问题,比如分页控件显示的都是英文,引入这个可以显示为中文
以前写的分页控件都是和相关技术有关的,这是一个JavaScript写的分页控件,与服务器端的技术,如ASP,ASP.NET,PHP,JSP等无关,只需要在相应的地方输出信息即可; <br>调用方式: 用动态Web语言在HTML界面上...