`

ruby-1.8.7中truncate方法重写

阅读更多

在ruby-1.8.7中的运用方法truncate会存在问题,有些属性无法识别,所以在ruby-1.8.7中如果要使用方法truncate 实现字符串截取并替换的功能的话,就需要对这个方法进行重写。我们可以把这个方法写在位于/config/environment.rb中,具体的方法可 以这样写:

module ActionView
  module Helpers
    module TextHelper
      def truncate(text, length = 20, truncate_string = “…”)
        if text.nil? then return end
        l = length – truncate_string.chars.to_a.size
        (text.chars.to_a.size > length ? text.chars.to_a[0...l].join + truncate_string : text).to_s
      end
    end
  end
end

添加完成后,重新启动mongrel,在调用这个方法的地方就不会报错了,实现了我们想要实现的功能。这个bug在版本1.8.6中以及后面跟进的版本1.9中是不存在的。

2
0
分享到:
评论

相关推荐

    ruby-1.8.7-p302.tar.gz

    Ruby,一种为简单快捷的面向对象编程(面向对象程序设计)而创的脚本语言,在20世纪90年代由日本人松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。...该版本为ruby-1.8.7-p302

    ruby-1.8.7.tar.gz

    Ruby 1.8.7 包含了 Ruby 解释器和其他必要的库,使得开发者能够在这个环境中编写和运行 Ruby 代码。在描述中提到,这个 `.tar.gz` 文件是用户在搭建 Redmine 过程中需要用到的,这表明 Redmine 可能需要特定版本的 ...

    ruby-1.8.7-p358-i386.rar

    ruby-1.8.7-p358-doc-chm.7z 3.65 MB 1,399 Other Other ruby-1.8.7-p358-i386-mingw32.7z 5.12 MB 1,503 i386 Other rubyinstaller-1.8.7-p358.exe 11.69 MB 13,534 i386 .exe (Windows executable)

    ruby-1.8.7-p72.tar.gz

    "ruby-1.8.7-p72.tar.gz" 是一个特定版本的Ruby发行版,这里的“p72”代表了该版本的补丁级别,意味着它是Ruby 1.8.7版本的一个更新,修复了之前版本中的某些问题和提升了性能。".tar.gz"是Unix/Linux系统中常见的...

    ruby-1.8.7-p302.tar.bz2

    ruby-1.8.7-p302.tar.bz2

    aspectjrt-1.8.7.jar aspectjweaver-1.8.7.jar

    这需要 `aspectjrt-1.8.7.jar` 中的类装载器支持。 3. **编译器和字节码库**:AspectJ Weaver 包含了对 Java 字节码的操作和分析工具,能够理解并修改 Java 类的结构,以实现切面的织入。 4. **性能优化**:Weaver ...

    ruby-1.8.7-p72-i386-mswin32.zip

    标题 "ruby-1.8.7-p72-i386-mswin32.zip" 提供的信息表明,这是一个针对i386架构的Windows 32位系统的Ruby编程语言的版本1.8.7,具体补丁级别为p72。Ruby是一种面向对象的、动态类型的脚本语言,由日本人松本行弘于...

    ruby-1.8.7-p174-i386-mswin32

    这个版本是Ruby的1.8.7线中的patchlevel 174,通常表示为Ruby 1.8.7-p174。Ruby是一种面向对象的、动态类型的脚本语言,由Yukihiro "Matz" Matsumoto创建,广泛用于Web开发、系统管理任务以及各种应用程序的构建。 ...

    rubygems-1.8.7.gz for linux

    在“rubygems-1.8.7.gz”中,"1.8.7"是该版本的编号,这表示它是RubyGems的第1.8.7次更新。每个版本通常会修复已知问题,增加新功能,或者提高性能。在Ruby社区,保持RubyGems的更新是很重要的,因为最新的版本通常...

    sentinel-dashboard-1.8.7.jar

    sentinel-dashboard-1.8.7.jar,github经常打不开,下载了好几天才下载下来,给大家分享下

    svn-1.8.7稳定版

    在SVN-1.8.7中,主要包含以下关键知识点: 1. **增强的性能**:相比于之前的版本,1.8.7在执行常见的版本控制操作如checkouts(检出)、commits(提交)和updates(更新)时,其性能得到了显著提升。这使得开发者...

    rubyinstaller-1.8.7-p299安装包

    rubyinstaller-1.8.7-p299,rubyinstaller-1.8.7-p299 ruby 最新安装包

    Wireshark-win64-1.8.7

    Wireshark-win64-1.8.7 在64为操作系统上安装

    ruby-irb-1.8.7.352-13.el6.x86_64.rpm

    ruby-irb-1.8.7.352-13.el6.x86_64.rpm ruby-irb-1.8.7.352-13.el6.x86_64.rpm

    rubyinstaller-1.8.7-p358

    rubyinstaller-1.8.7-p358

    aspectjweaver-1.8.7.jar 以及其他3个jar包

    "aspectjweaver-1.8.7.jar"是AspectJ的主要组件之一,它是AspectJ Weaver,用于在运行时将切面织入到Java类中。 AspectJ Weaver是Spring AOP的基础,它能够与Spring容器协同工作,实现在不修改源代码的情况下,对...

    rubyinstaller下载 rubyinstaller-1.8.7-p330.exe 下载

    rubyinstaller下载 rubyinstaller-1.8.7-p330.exe 下载。

    spring aop依赖包 aspectjweaver-1.8.7 aspectjrt-1.8.7 aopalliance-1.0

    本文将深入探讨Spring AOP的依赖包,包括`aspectjweaver-1.8.7.jar`、`aspectjrt-1.8.7.jar`以及`aopalliance-1.0.jar`,并阐述它们在Spring AOP中的作用。 首先,`aspectjweaver-1.8.7.jar`是AspectJ Weaver的实现...

    aspectjweaver-1.8.7相关包

    在给定的压缩包中,有两个关键的jar文件:`aspectjrt-1.8.7.jar` 和 `aspectjweaver-1.8.7.jar`。这两个文件都是AspectJ框架的重要组成部分: 1. **aspectjrt-1.8.7.jar**:AspectJ Runtime Library,提供了运行时...

    aspectjweaver-1.8.7.jar

    在`aspectjweaver-1.8.7.jar`中,包含了用于动态编织的类和方法,以及与Spring框架集成所需的支持。 Spring AOP是Spring框架的一部分,它提供了面向切面编程的实现,允许开发者定义“切面”——一组相关或相互协作...

Global site tag (gtag.js) - Google Analytics