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



这个问题是我上一个问题的后续问题,可以在这里找到。如果我有一个网站www.foo.com和用户类型在www.foo.com/blahblahblah我希望它重定向到根路径,并能够操纵文本blahblahblah。我使用了罗布·戴维斯对这个问题提出的解决方案,它在大多数情况下都能正常工作——如果用户输入像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]中?

再一次,请先阅读这里的问题和答案。如果你能回答这个问题,那就太棒了!

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

如果您使用Rob Davis给您的第一个示例(没有重定向的那个),您将能够使用

检查querystring参数:
request.query_string

检查这个,可能也有用:Rails路由与查询字符串

最新更新