2010-11-12 23 views
0

將空格,加號,雙引號和重音拉丁字符添加到URL作爲參數時,我遇到了一些問題。它們總是被轉換爲以%開頭的數字,這給我們帶來了很多麻煩,因爲葡萄牙人使用了很多這些字符。Rails:如何避免更改URL中的空格和其他特殊字符

當在URL中手動輸入字符時,一切正常,但一旦rails導入鏈接,它將替換它。

有沒有辦法避免這種情況?

下面是一個例子。取而代之的

url?q=transgênico 

我們得到

url?q=transg%C3%AAnico 

這完全打破了我們的搜索和通訊通過參數的其他網站 - 手動鍵入特殊字符時工作正常。

我必須承認我沒有搜索這個,因爲英語不是我的第一語言,我也不知道要搜索什麼......我所有的嘗試都沒有結果,但我可能使用了不好的術語。

使用Rails 2.3.8。

預先感謝您。

+0

您可以添加的link_to代碼? – rwilliams 2010-11-12 18:19:23

回答

0

我想嘗試設置:escape => false標誌link_to等。如果這沒有幫助,你可能需要猴子補丁actionpack/lib/action_view/helpers/url_helper.rb

0

Maudite是正確的。你可以把這個網址回「好」的形式把它作爲搜索詞前:

require 'cgi' 
CGI.unescape 'url?q=transg%C3%AAnico' 

生產:

"url?q=transgênico" 
+0

完美的工作,謝謝你的maarons。並感謝所有花時間幫助的人。 – MarceloJ 2010-11-16 22:36:52

相關問題