它将 URL http://localhost:3000/example?t-6ren">
gpt4 book ai didi

ruby-on-rails - rails : How to escape ampersand in URL formation

转载 作者:行者123 更新时间:2023-12-04 06:25:49 25 4
gpt4 key购买 nike

我有一个 link_to像下面这样的助手:

<%= link_to "example & text", url_for(:controller =>'example', :title=>"example & text") %>

它将 URL http://localhost:3000/example?title=example&amp:text 框起来

在示例 Controller 中,它调用 index方法但是 params[:title]返回
example&amp:text .

我想要一个像“示例和文本”这样的值。所以我试过了 CGI::escape()CGI::escapeHTML()但没有运气。

最佳答案

url 需要使用 CGI.escape 进行转义:

link_to "example & text", :controller => "example", :title => CGI.escape("example & text")

这应该会产生类似的东西:
<a href="/example?title=example+%26+text">example & text</a>

然后,无论您想在何处使用它,您都可以再次取消转义以使其恢复正常:
CGI.unescape params[:title] # => "example & text"

关于ruby-on-rails - rails : How to escape ampersand in URL formation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4792221/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com