rails 3新增XXS机制,导致html标签在output的时候要进行校验,使用will_paginate的时候会有一些问题,显示不出分页界面,如:
<span class="disabled"><<上一页</span> <span class="current">1</span> <a href="/store/index?page=2">2</a> <a href="/store/index?page=3">3</a> <a href="/store/index?page=2">下一页>></a>
这里面是由于will_paginate中没有对rails 3的新特性予以支持,
需要修改内容 will_paginate\view_helpers.rb中的to_html方法
def to_html
links = @options[:page_links] ? windowed_paginator : []
# previous/next buttons
links.unshift page_link_or_span(@collection.previous_page, 'disabled', @options[:prev_label])
links.push page_link_or_span(@collection.next_page, 'disabled', @options[:next_label])
html = links.join(@options[:separator])
html = "每页显示<b>#{@collection.per_page}</b>条数据,共有<b>#{total_pages}</b>页, 共有<b>#{@collection.total_entries}</b>条数据" + html
html = html.html_safe if html.respond_to? :html_safe
@options[:container] ? @template.content_tag(:div, html, html_attributes) : html
end
原理就是在rails在进行html_safe校验之前,进行安全赋值。
分享到:
相关推荐
Rails框架中,`will_paginate`是一个非常流行且强大的分页插件,它简洁易用,功能强大,能够很好地与ActiveRecord集成。本文将深入探讨`will_paginate`的使用方法、核心概念以及其实现原理。 ### 一、安装与配置 ...
will_paginate-bootstrap, 将 Twitter Bootstrap 分页组件与will_paginate集成 will_paginate-bootstrap不再维护我不再使用 Bootstrap 来使用 Rails,所以不幸的是,我不再接受请求请求或者维护这个库。 为了发布你...
在本文中,我们将深入探讨`will_paginate`的使用方法、功能特性以及它如何与Rails集成,帮助提升Web应用的性能和用户体验。 一、`will_paginate`简介 `will_paginate`是由Mislav Marohnić开发的,它为Ruby on ...
总结,will_paginate是Rails开发中不可或缺的工具之一,它简化了数据分页的实现,提升了代码的可读性和维护性。通过理解并熟练掌握will_paginate的使用,开发者可以更高效地处理大数据量的Web应用。
3. **模型中启用分页**:在需要分页的模型中,使用`has_many :through`或`has_and_belongs_to_many`关联时,需要在关联上添加`:finder_sql`选项,以便`will_paginate`可以正确处理分页。 4. **控制器中设置分页参数...
3. **与ActiveRecord集成**:`will_paginate` 无缝集成于 ActiveRecord,这意味着你可以直接在查询链上使用 `paginate` 方法,如 `Post.where(status: 'published').paginate(page: params[:page])`。 4. **兼容性*...
will_paginate是一款极其流行的Rails分页解决方案,由Mislav Marohnić开发,其设计简洁,易于集成,且具有高度可定制性。v2.3.11是该插件的一个稳定版本,提供了可靠和高效的分页功能。 ### will_paginate核心特性...
will_paginate will_paginate是一个分页库,与Ruby on Rails,Sinatra,Hanami :: View,Merb,DataMapper和Sequel集成。 安装: ## Gemfile for Rails 3+, Sinatra, and Merbgem 'will_paginate' , '~> 3.1.0' 有关...
在Ruby on Rails框架中,`Rails 2.0.2`是一个较早的版本,而分页功能在那个时期并不像现在的Rails应用那样内置在框架内。为了实现分页,开发者通常需要安装并使用第三方插件,比如"will_paginate"。这个插件允许你在...
`Will_Paginate` 是一个非常流行的Ruby on Rails插件,用于处理大型数据集的分页。它提供了简洁、灵活的API,使得在Rails应用中实现数据库查询结果的分页变得简单易行。在本篇文章中,我们将深入探讨`Will_Paginate`...
Ruby-on-Rails、Sinatra、Merb、DataMapper 和 Sequel 这些都是 Ruby 开发领域中的关键组件,而 `will_paginate` 是一个在这些框架中广泛使用的分页库。它提供了简单、灵活的接口,帮助开发者在处理大量数据时进行...
Rails Engine扩展了样式以匹配Twitter的 4工具包中的分页样式约定。 安装 添加到您的Gemfile: gem 'will_paginate-bootstrap4' 用法 <%= will_paginate @clients, renderer: WillPaginate::ActionView::...
在这个特定的场景中,我们关注的是一个名为 "will_paginate" 的插件,它是 Ruby on Rails 中用于实现高效、灵活分页功能的常用工具。 `will_paginate` 插件为 Rails 应用程序提供了一种简单而优雅的方式来处理大量...
在Ruby on Rails(ROR)框架中,实现搜索和分页功能是常见的需求,尤其是在构建数据密集型Web应用时。本示例将深入探讨如何利用Ruby技术和Rails的强大特性来完成这一任务。 首先,我们需要理解搜索功能的基础:查询...
安装:##用于Rails 3 +,Sinatra和Merb的Gemfile gem'will_paginate','〜> will_paginate will_paginate是与Ruby on Rails,Sinatra,Hanami :: View,Merb,DataMapper和Sequel集成的分页库。 安装:##用于Rails 3...
传统的分页方法如`Kaminari`或`will_paginate`在处理大量数据时,会一次性加载所有分页所需的记录,这可能导致内存占用过多,从而影响应用程序的性能。`Geared Pagination`则采用了一种更聪明的策略,它根据当前的...
# gem 'will_paginate' # gem 'kaminari' # gem 'pagy' gem 'pager_api' 然后执行: % bundle 组态 此步骤是完全可选的 gem附带有一个安装程序,供您配置它,例如,在分页处理程序之间切换或是否包含Link标头或元...
MySQL 数据库使用以下命令生成所需的控制器和模型:rails generate Gems 添加到 Gemfile: mysql2,devise,will_paginate 使用 Devise 实现用户认证分页是使用 will_paginate gem 实现的在您的系统上运行项目Ruby...
在Ruby on Rails开发中,当处理大量数据时,分页是一个必不可少的功能。Kaminari就是这样一个专门为Rails设计的高效、易用且高度可定制的分页库。它以其简洁的API和强大的功能赢得了广大开发者的好评。 **一、...