Ruby on rails 如何使用RubyonRails将带有字符的文本转换为HTML实体?

Ruby on rails 如何使用RubyonRails将带有字符的文本转换为HTML实体?,ruby-on-rails,helpers,html-entities,Ruby On Rails,Helpers,Html Entities,我想使用URL调用方法,但需要使用HTML实体编写: 所以如果我有http://www.myurl.com/foobar例如,使用Ruby on Rails助手,我可以得到如下结果: http%3A%2F%2Fwww.myurl.com%2foobar我不知道rails中是否有任何东西可以直接实现所有的转义,但是如果您需要“cgi”您可以使用cgi::escape ruby-1.8.7-p174 :001 > require 'cgi' => true ruby-1.8.7-p1

我想使用URL调用方法,但需要使用HTML实体编写:

所以如果我有
http://www.myurl.com/foobar
例如,使用Ruby on Rails助手,我可以得到如下结果:


http%3A%2F%2Fwww.myurl.com%2foobar

我不知道rails中是否有任何东西可以直接实现所有的转义,但是如果您
需要“cgi”
您可以使用
cgi::escape

ruby-1.8.7-p174 :001 > require 'cgi'
 => true 
ruby-1.8.7-p174 :002 > s = "http://www.myurl.com/foobar"
 => "http://www.myurl.com/foobar" 
ruby-1.8.7-p174 :003 > CGI::escape(s)
 => "http%3A%2F%2Fwww.myurl.com%2Ffoobar" 

显然,为了使它在视图中或任何地方看起来更美观,您可以将该方法包装在助手中。

我不知道rails中是否有任何东西可以直接实现所有转义,但是如果
需要“cgi”
您可以使用
cgi::escape

ruby-1.8.7-p174 :001 > require 'cgi'
 => true 
ruby-1.8.7-p174 :002 > s = "http://www.myurl.com/foobar"
 => "http://www.myurl.com/foobar" 
ruby-1.8.7-p174 :003 > CGI::escape(s)
 => "http%3A%2F%2Fwww.myurl.com%2Ffoobar" 

显然,为了使它在视图中或任何地方看起来更美观,您可以将该方法包装在一个助手中。

有一个伟大的rubygem“htmlentities”,它起到了关键作用:

有一个伟大的rubygem“htmlenties”其中的诀窍是:

这也是正确的,但我在经销商主机上,因此我必须等待支持团队花这么多时间来安装Gem。为什么不将其复制到您的/lib或供应商文件夹中?因为经销商服务器重新加载配置所需的时间太长。。。。它在FCGit上运行这也是正确的,但我在经销商主机上,因此我必须等待支持团队花这么多时间安装Gem,为什么不将其复制到/lib或供应商文件夹中?因为经销商服务器重新加载配置所需的时间太长。。。。它在fcgi上运行