Ruby on rails 将带有punycode的转义URL转换为utf,重构
我想将我的所有url存储在可读utf8中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
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。请参阅本文(希望有帮助):