ruby-on-rails – Rails – 处理404s的任何奇特方式?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – Rails – 处理404s的任何奇特方式?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个我为一个旧网站构建的rails应用程序,我从另一个cms转换(用非rails语言,呵呵).大多数旧页面都使用routes.rb映射到新页面.但仍有一些404.

我是一个rails newb所以我问是否有任何先进的方法来处理404s.例如,如果我用我的旧语言编程,我会这样做:

>获取正在访问的URL(script_name)并解析它.
>在数据库中查找新URL中找到的任何关键字,ID等.
>如果找到,则重定向页面(或者如果找到多个记录,则在结果页面显示所有记录并让用户选择).使用rails我可能想做:status => :我正在猜测?
>如果未找到,请显示404.

有没有你知道的宝石/插件或教程可以处理这样的事情,如果它甚至可能的话.或者你能从高层次解释如何做到这一点吗?我不需要完整的代码示例,只需向正确的方向推进即可.

PS.这是一个使用单个内容模型的简单rails 3应用程序.

解决方法

把它放在路线中(在你拥有的每一条路线之后,这将捕获每个网址)
match '*url' => 'errors#routing'

现在,在路由操作中的错误控制器中,您可以实现所需的任何奇特逻辑,并像往常一样呈现视图(您可能希望在渲染调用添加:status => 404).请求的控制器中可以使用请求的URL作为params [:url].

原文链接:https://www.f2er.com/ruby/268193.html

猜你在找的Ruby相关文章