Rails bad URL [Rails 中 url 有特殊字符如何处理]

michael_roshen · 2014年07月17日 · 最后由 gogojimmy 回复于 2014年08月12日 · 2501 次阅读

路由中定义 match 'articles/:value/search' => 'articles#index' 简单起见,在页面中拼一个 url <%= link_to 'Search', "/articles/%/search" %>

如果:value 匹配了%或者.,程序就会报错 尝试了 CGI.escape 还是不行,有什么方法可以把 % 转换成 %25

URI.escape('%') 或者使用 jQuery 的 $.param()

这个问题我也遇到。。但我的需求是后台接受到含有%的请求时,也要正确处理。比如直接从地址栏输入 url 访问也要确保后台正确处理。这个可有可行的办法?

直接用 query string 就可以了,为什么要用%, /articles?q=foo就行了。

#4 楼 @billy 我只是把业务上得问题简化了一下,大概意思就是不能直接接参数

需要 登录 后方可回复, 如果你还没有账号请 注册新账号