例子是对产品实现分页
使用 http://localhost:3000/products/page/:page/pre_page/:pre_page 格式来实现分页
:page 是第几页
:pre_page 是每一页有多少条记录
在 config/routes.rb 中加入
map.connect 'products/page/:page/pre_page/:pre_page', :controller => 'products', :action => 'page'
在 app/controllers/products_controller.rb 中加入方法
def page
@page = params[:page]
@pre_page = params[:pre_page]
# 处理程序
end
现在可以用 http://localhost:3000/products/page/1/pre_page/10 来实现对产品第一页(每页10条记录)访问。
如果每个都加入 pre_page 参数会很繁琐,就在 config/routes.rb 中加入多一条
map.connect 'products/page/:page', :controller => 'products', :action => 'page'
在控制器中要把处理 @pre_page 的改一下,如下:
def page
@page = params[:page]
@pre_page = params[:pre_page] || 5
# 处理程序
end
这样我们就可以用 http://localhost:3000/products/page/1 来对产品的第一页进行访问(每页5条记录)。
参考
http://oldmoe.blogspot.com/2008/01/restful-pagination-in-rails.html
分享到:
相关推荐
Ruby on Rails(简称Rails)是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,极大地简化了Web应用开发。API(Application Programming Interface)是Rails提供的一种允许...
这意味着 **Rails** 控制器不仅支持传统的 HTML 视图,还支持基于 REST 的数据交换。 具体的步骤包括: 1. 用户通过浏览器访问特定的 URL。 2. 请求通过互联网到达运行 **Rails** 的 Web 服务器。 3. Web 服务器将...
REST(Representational State Transfer)是一种网络应用程序的设计风格和开发方式,基于HTTP协议,强调资源的表述和状态转移。Rails的路由系统支持RESTful模式,如`resources :users`会自动创建CRUD操作的路由。 ...
`jsGrid` 是一个基于jQuery的数据网格插件,提供了一种灵活的方式来在前端展示和编辑数据。它的主要特点包括: - **轻量级**:jsGrid的源码非常小巧,适合各种规模的项目。 - **高度可配置**:你可以自定义列、过滤...
- 采用了基于REST的架构风格来编写Rails应用,实现了良好的性能表现。 #### 六、缓存工具与插件 - **ActiveRecord缓存**:Rails内置的ORM框架ActiveRecord提供了强大的缓存支持,包括对象缓存、查询缓存等。 - **...
- **默认会话存储方式**:Rails 2.0默认采用基于Cookie的会话存储方式,使得会话管理变得更加简单。 ##### 3.4 嵌套布局 - **部分布局**:Rails 2.0支持嵌套布局,允许在一个布局中包含另一个布局,为页面设计提供...
相比第2版中的内容,Rails 2增加了REST、资源、轻量级web service等新特性。本书涵盖了这些全新的内容,因此能更好地体现出Rails框架的发展现状。 整体而言,全书既有直观的实例,又有深入的分析,同时还涵盖了web...
rails-pc-五金店 该项目是作为大学的“脚本语言”课程分配的 待办事项 至少10种桌子型号(重要) 在Heroku上部署 种子数据库 登录/注销/注册/记住我已实现 必须具有管理员权限的用户(将新产品添加到数据库) ...
添加Kaminari进行分页 分页的一些基本查询 # get records according to pages Post . page ( page_no ) # default limit is 11 and offset is 25 post = Post . page ( 2 ) . per ( 5 ) # per is used for set ...
Rails4应用程序使用SmoothOperator :: Rails而不是ActiveRecord :: Base类列出/创建/编辑和销毁Padrino(又名Sinatra)应用程序中的博客文章。 这个微服务示例还将包含其他一些很酷的东西,例如: 并行请求; ...
运行应用rails server路线rake routes 遵循REST约定任务/ api / v1 / tasks GET / =>:index GET /:id =>:显示POST / =>:创建补丁/:id =>:update 删除/:id =>:destroy标签/ api / v1 /标签GET / =>:index ...
Ruby on Rails(简称RoR)是一个基于Ruby编程语言的开源Web开发框架,它遵循MVC(Model-View-Controller)架构模式,旨在提高开发效率和代码的可读性。在这个"RubyOnRails做的博客"项目中,我们可以看到作者用RoR...
:open_book: 阅读简介文章: 典型用法是描述REST index操作的所有可能的收集操作,例如过滤,排序,搜索,分页等。 因此,代替: class CourseSessionController < ApplicationController def index @sessions =...
明星API 类别:工具箱 简报网址: 演示:[Demo]( ) API端点: 依存关系 ...作为REST获取api的可用资源:星星,exo_planets,local_groups,开放星团,星座 分页查询 在/api/v1/search?q=处搜索端
Maru是一款轻量级且强大的Web开发库,它提供了类似于Ruby on Rails的路由和参数处理功能,但更加简洁和灵活。 首先,让我们理解什么是Maru。Maru是由Elixir社区开发的一个HTTP服务器框架,它允许开发者以模块化的...
GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...
GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...
GWT Advanced Table 是一个基于 GWT 框架的网页表格组件,可实现分页数据显示、数据排序和过滤等功能! Google Tag Library 该标记库和 Google 有关。使用该标记库,利用 Google 为你的网站提供网站查询,并且可以...