加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Ruby 1.9不支持Unicode归一化

发布时间:2020-12-16 20:17:45 所属栏目:百科 来源:网络整理
导读:我试图将一些旧的rails应用程序移植到 Ruby 1.9,我不断收到关于 Ruby 1.9如何不支持Unicode标准化的警告.我已经跟踪到这个功能,但是我每个请求收到大约20个警告消息: 导轨-2.3.5 /的ActiveSupport / lib中/ active_support / inflector.rb def transliterat
我试图将一些旧的rails应用程序移植到 Ruby 1.9,我不断收到关于 Ruby 1.9如何不支持Unicode标准化的警告.我已经跟踪到这个功能,但是我每个请求收到大约20个警告消息:

导轨-2.3.5 /的ActiveSupport / lib中/ active_support / inflector.rb

def transliterate(string)
  warn "Ruby 1.9 doesn't support Unicode normalization yet"
  string.dup
end

任何想法我应该如何开始跟踪这些下来并解决它?

解决方法

如果您知道后果,即重音字符不会在Ruby 1.9.1 Rails 2.3.x中进行音译,请将其放在配置/初始化器中以使警告静音:
# https://stackoverflow.com/questions/2135247/ruby-1-9-doesnt-support-unicode-normalization-yet
module ActiveSupport
  module Inflector
    # Calling String#parameterize prints a warning under Ruby 1.9,# even if the data in the string doesn't need transliterating.
    if Rails.version =~ /^2.3/
      undef_method :transliterate
      def transliterate(string)
        string.dup
      end
    end
  end
end

Rails 3确实解决了这个问题,所以更加面向未来的解决方案将是向这个迁移.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读