如何在Ruby中将字符串转换为URL?

时间:2013-12-17 18:30:16

标签: ruby-on-rails ruby ruby-on-rails-3

在我的Rails应用程序中,我需要转换像

这样的字符串
Friedrichtraße 123, Berlin, Germany

这样的网址中
Friedrichstra%C3%9Fe+123,+Berlin,+Germany

如何在Ruby中完成?

感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

require 'uri'

URI::encode("Friedrichtraße 123, Berlin, Germany")
#=> "Friedrichtra%C3%9Fe%20123,%20Berlin,%20Germany"

答案 1 :(得分:1)

require 'cgi'

CGI.escape('Friedrichtraße 123, Berlin, Germany')
# => "Friedrichtra%C3%9Fe+123%2C+Berlin%2C+Germany"

答案 2 :(得分:1)

对于我将添加的两个子Rails答案:调用rake routes,在第一列中读取所需URL的帮助器前缀 - 让我们称之为home - 然后将变量打包为哈希选项home_path

home_path(:address => 'Friedrichtraße 123, Berlin, Germany')