Rails从无效路由读取url查询字符串

时间:2011-07-03 20:25:14

标签: ruby-on-rails-3

这个问题是我之前的问题的后续问题here。如果我有一个网站www.foo.com并且用户在www.foo.com/blahblahblah中输入,我希望它重定向到根路径并能够操作文本blahblahblah。我使用了Rob Davis在该问题上提出的解决方案,它在大多数情况下都能正常工作 - 如果用户键入类似www.foo.com/a/b/c的内容,它会重定向到根路径并且字符串a/b/c正确地存在存储在params[:not_found]中。但是,如果用户输入带有问号的内容,例如www.foo.com/a?b=c,那么params[:not_found]中存储的所有内容都会a?b=c会消失。如何确保问号是否存在www.foo.com/params[:not_found]存储的所有文字?

再次,请先read the question and the solution here。然后,如果你能回答这个很棒的问题!

1 个答案:

答案 0 :(得分:1)

Rails路由只能匹配补丁,而不是查询字符串。

如果你使用Rob Davis给你的第一个例子(没有重定向的那个),你将能够使用以下方法检查查询字符串参数:

request.query_string

检查一下,也可能有用:Rails Routing with Query String