Rails – 如何处理不存在的路由(“没有路由匹配”)?

我的route看起来像

 match 'about' => 'company#about' 

当我设置为URL http://localhost:3000/aboutttt ,我收到错误消息

 No route matches [GET] "/aboutttt" 

我想给用户更好的反馈。

我认为最好的解决方案可能是重定向应用程序,或者在应用程序的主页上,但是当我得到上述错误时,以任何方式存在于路由中以设置默认路由?

运行您的应用程序环境设置为生产,我想你会发现你将不再看到这条消息。 在开发过程中,它可以方便调试。

config/environments/production.rbconfig/environments/development.rb有一个设置(我记不清哪个方向)控制exception是否呈现为视图。 这是关闭生产 – 而是你获得public的404.html,你可以随意改变。

当你在开发时。 通过设置: config.consider_all_requests_local = false在config / environments / development.rb中进行更改

这将禁用完整错误报告,而是显示一个包含用户交互式响应的页面。 但是这已经在生产环境中禁用了。 但我不建议在开发模式下将其关闭。