Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 将带有punycode的转义URL转换为utf,重构_Ruby On Rails_Ruby_Idn_Punycode - Fatal编程技术网

Ruby on rails 将带有punycode的转义URL转换为utf,重构

Ruby on rails 将带有punycode的转义URL转换为utf,重构,ruby-on-rails,ruby,idn,punycode,Ruby On Rails,Ruby,Idn,Punycode,我想将我的所有url存储在可读utf8中 class User < ActiveRecord::Base require 'addressable/uri' require 'idn' include IDN def service_url=(url) url = Addressable::URI.parse Addressable::URI.unescape(url) url.host = Idna.toUnicode url.host super

我想将我的所有url存储在可读utf8中

class User < ActiveRecord::Base
  require 'addressable/uri'
  require 'idn'
  include IDN
  def service_url=(url)
    url = Addressable::URI.parse Addressable::URI.unescape(url)
    url.host = Idna.toUnicode url.host
    super url.to_s
  end
end
class用户

有关于重构或更多通用gems的提示吗?

我想问一下,为什么要将它们存储为UTF-8。是的,它们将为您提供多字节字符的可见表示,但是,您可能会遇到后端数据库不喜欢将字符注入表中的问题。这是值得考虑的事情。1使用Addressable::URI。请看这篇文章(希望有帮助):我想问一下为什么要将它们存储为UTF-8。是的,它们将为您提供多字节字符的可见表示,但是,您可能会遇到后端数据库不喜欢将字符注入表中的问题。这是值得考虑的事情。1用于为此使用Addressable::URI。请参阅本文(希望有帮助):