rails:在rails中显示用户友好消息以发现路由错误

rails: displaying a user friendly message for a routing error in rails

我在mac osx leopard上使用rails 2.3。
每次我输入一个在rails应用程序中不存在的url时,我会收到以下错误

1
2
3
Routing Error

No route matches"/whatever_i_typed" with {:method=>:get}

这是发现的发现,但我想知道如何确保用户看到更友好的'哎呀! 找不到'页面。 我正在考虑做一个开始...救援块,但我不知道在哪里放,它不知道错误代码(即ActiveRecord :: RecordNotFound)

谢谢!
尤瓦


此错误将永远不会出现在生产中。 相反,用户将看到public / 404.html页面。

要在本地主机上尝试此操作,请将乘客/杂种投入生产模式。 覆盖ApplicationController上的local_request?方法,如下所示:

1
2
3
4
5
class ApplicationController
  def local_request?
    false
  end
end

如果您想尝试动态行为,可以查看ActionController上的rescue_from类方法。


我发现以下网址对Rails 3.0 ..用户有帮助。

http://techoctave.com/c7/posts/36-rails-3-0-rescue-from-routing-error-solution


怎么样

1
map.connect '*url', :controller =>"not_found"

作为最后的routes.rb条目? 我认为应该这样做,不应该吗?