`

关于rails学习中分页的示例

阅读更多

环境:ruby 1.8.7  rails 2.3.5 gem 1.3.5 mysql5

 

废话不多,速度演示

 

1.创建一个演示demo

rails pagination -d mysql

修改config/databse.yml数据库配置

 

2.创建数据库

cd pagination

rake db:create #创建数据库

 

3.创建一个USER对象

ruby script/generate scaffold user name:string age:integer #创建脚手架代码,基本CRUD

 

4.安装will_paginate插件

gem install will_paginate #安装插件,傻瓜方法

 

5.加载will_pageinate

打开config/environment.rb,添加

Rails::Initializer.run do |config|

  ...

end


require "will_paginate" #加载will_paginate

 

6.修改每页显示数

例:

class User < ActiveRecord::Base

cattr_reader :per_page       #设置每页记录数,此处每页3条

        @@per_page = 3

end

 

7.修改controller

修改index方法,加入

@users = User.paginate( :page => params[:page], :order => 'name') #通过page参数进行分页,并按name自带排序

 

默认代码:

@users = User.find(:all) #默认代码可能是这样的,查找所有,并未分页

 

8.修改模板文件index.html.erb

加入翻页代码

<%= will_paginate @users ,:prev_label => '上一页', :next_label => '下一页'%>

具体可以自己设定 pre_label 名称

 

9.启动服务器

ruby script/server

 

10.访问http://127.0.0.1:3000/users

 

 

可能碰到的问题

1.说什么paginate方法未定义,检查上面第5步,估计是will_paginate没加载,忘了,或者插件没安装

 

2.在模板中说什么each方法未定义啥的,重启下服务器,就是重复第9步

 

3.其他情况,有时重复下第9步蛮有效的

 

 

参考资料

1.http://blog.csdn.net/kunshan_shenbin/archive/2009/05/14/4182610.aspx

基本安装他的说法照做就能实现

 

2.http://github.com/mislav/will_paginate

插件下载地址,并附简单说明

 

3.http://wiki.github.com/mislav/will_paginate/installation

2中的安装说明


分享到:
评论

相关推荐

    使用jsonapi设计的Rails应用程序的基本示例_Ruby_Java.zip

    在这个基本示例中,我们将探讨如何在Ruby on Rails框架中实现JSONAPI,以及如何与Java客户端进行交互。 一、Ruby on Rails与JSONAPI Ruby on Rails 提供了强大的模型-视图-控制器(MVC)架构,使得开发RESTful API...

    resume 用Ruby技术实现的search 分页的例子

    在Ruby on Rails(ROR)框架中,实现搜索和分页功能是常见的需求,尤其是在构建数据密集型Web应用时。本示例将深入探讨如何利用Ruby技术和Rails的强大特性来完成这一任务。 首先,我们需要理解搜索功能的基础:查询...

    bootstrap_example:Bootstrap + Rails 4.x 示例

    本示例"bootstrap_example"旨在展示如何在Rails 4.x应用程序中有效地整合Bootstrap。Rails 4.x是Ruby on Rails的一个稳定版本,它提供了强大的MVC(模型-视图-控制器)架构,支持数据库操作、路由配置和资产管道等...

    flexigrid+rails 新手代码-。-

    -" 指涉的是一个关于使用 Flexigrid 和 Ruby on Rails 框架的初级教程或示例项目。Flexigrid 是一个 JavaScript 库,常用于创建可扩展、灵活的表格,而 Ruby on Rails 是一个流行的开源 Web 应用程序框架,遵循 MVC...

    rails-playlists-源码.rar

    "rails-playlists-源码"很可能是某个开发者或团队分享的关于音乐播放列表管理功能的示例代码或项目。在本文中,我们将深入探讨Rails框架的基本概念,以及如何通过源码理解其在实现播放列表功能时的核心技术。 1. **...

    跨越边界 Ajax on Rails

    总的来说,《跨越边界 Ajax on Rails》是一本深入浅出的指南,它不仅解释了Ajax和Rails的结合,还提供了丰富的实践示例,帮助开发者构建更加动态和交互性强的Web应用。无论是初学者还是经验丰富的Rails开发者,都能...

    用Ext Scaffold插件打造Rails的Ext风格

    描述中提到的“Rails GUI Development with Ext JS 10-Jan-08 RUG-B [PDF文件]”是一篇关于使用Ext JS进行Rails GUI开发的文档,可能详细阐述了如何集成Ext JS和Rails,以及如何使用Ext Scaffold插件创建GUI。...

    WillPaginateExample:Ruby on Rails的Will_Paginate示例

    **Will_Paginate在Ruby on Rails中的应用** ...以上就是关于`Will_Paginate`在Ruby on Rails中的使用详解。在实际项目中,可以根据需求选择适合的分页解决方案,以提升应用程序的可维护性和用户体验。

    rails3 和 thinking_sphinx安装

    Thinking Sphinx 是一个为 Rails 应用程序提供全文搜索功能的插件,它将数据库中的数据与 Sphinx 搜索引擎紧密结合,提供高效且高度定制化的搜索体验。 在 Rails3 中集成 Thinking Sphinx,首先你需要确保你的系统...

    jsgrid-rails:带有Ruby on Rails REST服务的jsgrid的示例项目

    **jsgrid-rails: 使用Ruby on Rails构建...通过这个项目,开发者可以学习到如何利用jsGrid构建前端数据网格,以及如何用Rails搭建RESTful服务来支持前端的数据操作。这对于开发前后端分离的Web应用是非常实用的技能。

    scaffolding+will_paginate+提供will_paginate下载

    在Ruby on Rails开发中,数据分页是一种常见的需求,它能帮助我们有效地管理大量数据,提高用户体验。`scaffolding`是Rails中的一个强大的特性,它允许开发者快速生成基本的CRUD(创建、读取、更新、删除)操作的...

    rails-pc-hardware-store:基于Ruby on Rails构建的示例在线PC硬件商店

    rails-pc-五金店 ... 需要分页(列出所有用户的示例) 总而言之,它应该看起来像已经准备好投入生产的Web应用程序,并且已经过完善(所有链接都应该起作用,每个操作都应重定向到正确的地址,等等)。 功

    Web开发敏捷之道-应用Rails进行敏捷Web开发-第三版.rar

    在“构建应用程序”部分中,读者将看到一个完整的“在线购书网站”示例。在随后的“Rails框架“部分中,作者深入介绍了Rails框架的各个组件。 除了上述两部分外,对Rails缺乏了解的读者应该首先阅读“起步”部分,...

    WEB开发示例:MVC + Flexigrid

    在这个"MVCFlexigrid"示例中,我们可以学习到如何在MVC框架下利用Flexigrid构建动态、响应式的Web表格。开发者可以借此提高Web应用的用户体验,同时保持代码结构清晰和可维护。通过深入理解MVC模式和Flexigrid的使用...

    Jquery AutoComplete firefox 中文 Ajax (option url or data) Jquery rails 自动完成

    6. **Rails集成**:jQuery AutoComplete与Ruby on Rails框架的集成,通常涉及到控制器处理Ajax请求,返回JSON数据,以及在视图中设置jQuery插件配置。可能还需要使用`unobtrusive JavaScript`来实现Ajax请求的无刷新...

    rails-base:基于Rails的新项目的框架

    浏览示例 对于没有供应商前缀写CSS 的意见 的 对DRY控制器的 于DRY控制器 装饰模型以供查看 ,用垂帘延长体面的暴露 封装了应用程序的业务逻辑 封装授权逻辑 分页 基本身份验证 用于例外通知的 for Google ...

    will_paginate v2.3.11

    《will_paginate v2.3.11:Rails分页插件详解》 在Web开发中,处理大量的数据是常见的需求,特别是在使用Ruby on Rails框架时。为了优化用户体验,提高页面加载速度,分页功能显得尤为重要。这时,will_paginate...

    Apress.Practical.Rails.Social.Networking.Sites.Jun.2007.eBook-BBL.pdf

    从设计到部署的整个过程中,读者将学习到一系列实用的技术和最佳实践。 #### 三、关键知识点详解 ##### 1. Ruby on Rails简介 - **定义**:Ruby on Rails(简称Rails)是一种用于快速开发Web应用程序的开源Web...

    elasticsearch-rails:用于ActiveModelRecord和Ruby on Rails的Elasticsearch集成

    用于生成示例Rails应用程序的模板 Elasticsearch 项目提供了Elasticsearch客户端和Ruby API。 安装 从安装每个库: gem install elasticsearch-model gem install elasticsearch-rails 要使用未发布的版本,请将其...

Global site tag (gtag.js) - Google Analytics