`

Rails2.2.2之will_paginate分页

 
阅读更多
引用
分页是web开发中常见的问题,基本解决思路是每次查询当页的数据,在java中我们需要利用一些持久化框架才能实现各种数据库的通用分页逻辑。 然而在rails中我们只需安装will_paginate插件,简单的非常



1 用gem安装will_paginate插件
gem install mislav-will_paginate -v2.3.2 --source http://gems.github.com


添加如下代码到config\environment.rb
require 'will_paginate'



2 新建app\controllers\pager_controller.rb, 在controller中添加查询某一页数据的action方法,:page是第几页,:order是排序方式。模型类叫User,只有一个属性name.
class PagerController < ApplicationController
  
  def user_list
    @users = User.paginate :page => params[:page], :order => 'name'
  end
  
end


3 新建app\views\pager\user_list.html.erb,分页显示
<%= will_paginate @users, :container => false %>



4. 如何设定每页显示的行数?只需要在User模型类里定义一个类变量 @@per_page。我们这里每页只显示一条记录。
class User < ActiveRecord::Base

  cattr_reader :per_page
  @@per_page = 1
   ....
  end


5 最后,通过http://localhost:3000/pager/user_list?page=1查询第一页数据,如下图.


  • 大小: 6.9 KB
分享到:
评论

相关推荐

    will_paginate分页插件

    Rails框架中,`will_paginate`是一个非常流行且强大的分页插件,它简洁易用,功能强大,能够很好地与ActiveRecord集成。本文将深入探讨`will_paginate`的使用方法、核心概念以及其实现原理。 ### 一、安装与配置 ...

    will_paginate 2.2.2

    `will_paginate`是Rails框架中非常流行的一个分页插件,版本2.2.2是它的一个历史版本。在本文中,我们将深入探讨`will_paginate`的使用方法、功能特性以及它如何与Rails集成,帮助提升Web应用的性能和用户体验。 一...

    will_paginate-bootstrap, 将 Twitter Bootstrap 分页组件与will_paginate集成.zip

    will_paginate-bootstrap, 将 Twitter Bootstrap 分页组件与will_paginate集成 will_paginate-bootstrap不再维护我不再使用 Bootstrap 来使用 Rails,所以不幸的是,我不再接受请求请求或者维护这个库。 为了发布你...

    scaffolding+will_paginate+提供will_paginate下载

    而`will_paginate`则是一个非常流行的分页库,它与`scaffolding`结合使用,能够为你的Rails应用添加优雅的分页功能。 `will_paginate`库由Matias Berezin创建,它的设计简洁且易于使用。它不仅提供了分页的基本功能...

    will_paginate插件下载

    总结,will_paginate是Rails开发中不可或缺的工具之一,它简化了数据分页的实现,提升了代码的可读性和维护性。通过理解并熟练掌握will_paginate的使用,开发者可以更高效地处理大数据量的Web应用。

    will_paginate v2.3.11

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

    will_paginate 2.1.0

    `will_paginate` 是一个非常流行的 Ruby on Rails(Rails)框架中的分页库,它为开发者提供了方便的方式来处理大量数据的分页展示。版本 `2.1.0` 是这个库的一个特定版本,包含了该库在当时的一些特性、优化和可能的...

    will_paginate:用于Rails,Sinatra,Merb,DataMapper等的分页库

    will_paginate will_paginate是一个分页库,与Ruby on Rails,Sinatra,Hanami :: View,Merb,DataMapper和Sequel集成。 安装: ## Gemfile for Rails 3+, Sinatra, and Merbgem 'will_paginate' , '~&gt; 3.1.0' 有关...

    will_paginate_endless_scroll_example:如何使用 will_paginate gem 创建无限滚动的演示

    使用gem 'will_paginate', '~&gt; 3.0.7'实现无限/无限滚动的工作 Rails CRUD 应用程序示例。 gem 'faker'被用来为项目gem 'faker'虚假数据。 演示 现场演示: : 在本地开发中安装 克隆回购: git clone git@github...

    WillPaginateExample:Ruby on Rails的Will_Paginate示例

    `Will_Paginate` 是一个非常流行的Ruby on Rails插件,用于处理大型数据集的分页。它提供了简洁、灵活的API,使得在Rails应用中实现数据库查询结果的分页变得简单易行。在本篇文章中,我们将深入探讨`Will_Paginate`...

    rails 2.0.2 分页 需另外下载插件

    `will_paginate`是Rails社区中非常流行的一个分页解决方案,它提供了简洁的API和强大的功能。它不仅适用于Rails 2.x版本,也与后续的版本兼容。通过这个插件,你可以很容易地将数据集分页展示在网页上,同时提供链接...

    will_paginate-bootstrap4:钩入will_paginate以格式化html以匹配Twitter Bootstrap 4样式

    gem 'will_paginate-bootstrap4' 用法 &lt;&#37;= will_paginate @clients, renderer: WillPaginate::ActionView::BootstrapLinkRenderer %&gt; 以下选项可用(除了will_paginate中可用的选项之外): :list_classes ...

    Rails2.2.2之windows环境搭建

    在本教程中,我们将深入探讨如何在Windows操作系统上搭建Rails 2.2.2的开发环境。Rails是一个基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,使得Web开发变得更加简洁高效。本文将...

    ruby on rails 常用插件下载

    在这个特定的场景中,我们关注的是一个名为 "will_paginate" 的插件,它是 Ruby on Rails 中用于实现高效、灵活分页功能的常用工具。 `will_paginate` 插件为 Rails 应用程序提供了一种简单而优雅的方式来处理大量...

    ruby will_paginate的用法

    新版本的will_paginate已经抛弃了这样的做法,转而使用gem的方式,本文通过建立一个名为foobar的应用来了解一下will_paginate的用法。 ============================== C:\&gt;rails foobar -d mysql C:\&gt;cd foobar C:\...

    Ruby-willpaginate一个分页库可与RubyonRailsSinatraMerbDataMapper和Sequel集成

    Ruby-on-Rails、Sinatra、Merb、DataMapper 和 Sequel 这些都是 Ruby 开发领域中的关键组件,而 `will_paginate` 是一个在这些框架中广泛使用的分页库。它提供了简单、灵活的接口,帮助开发者在处理大量数据时进行...

    ruby on rails 2.2.2 参考手册

    Rails 2.2.2是该框架的一个较早版本,尽管如此,它仍然包含了许多核心概念和技术,对于理解Rails的运作机制及其发展历史非常有价值。 本参考手册是学习Rails 2.2.2的重要资源,特别适合初学者和有一定经验的开发者...

Global site tag (gtag.js) - Google Analytics