3

默认 Rails 将呈现 404.html,然后它认为错误 404 是合适的。但是,我想通过自定义页面制作它。请建议正确的方法。

4

3 回答 3

4

这个答案出奇地难找。

如果您想要静态页面,请编辑404.html. 完毕。

如果你想要一个动态页面,那么:

在 config/routes.rb 中:

match '*not_found', to: 'errors#error_404' unless Rails.application.config.consider_all_requests_local

注释掉unless在本地开发机器上测试 404 页面的子句。

生成一堆文件:

rails generate controller errors error_404

编辑views/errors/error_404.html.erb以自定义。

这适用于 Rails 3.1 和 3.2.2。

于 2012-10-05T18:22:04.063 回答
3

You could use render_404 monkey patching.

Or, you could set a default route at the bottom of your routes file that goes to an action that returns a 404 status code.

Ideally if you do not want any custom code in your 404 you can just edit the static 404.html, which is easiest.

于 2010-11-04T08:06:33.527 回答
0

根据您的需要,我们的 gem 可能会有所帮助:http: //github.com/hedgeyedev/snow

于 2011-06-03T13:10:48.227 回答