Rails exception_handler gem 未更新 404 页面

Rails exception_handler gem not updating 404 page

我正在使用 exception_handler gem 制作自定义 404 页面。当我转到我网站上的 404 页面时,它显示未找到,但我该如何自定义此页面?我尝试更改路线,使 errors_controller 和 not_found 视图。

application.rb

config.exceptions_app = self.routes

routes.rb

  get "/404", :to => "errors#not_found"
  get "/422", :to => "errors#unacceptable"
  get "/500", :to => "errors#internal_error"

errors_controller.rb

class ErrorsController < ApplicationController

  def not_found
    render :status => 404   end

  def unacceptable
    render :status => 422   end

  def internal_error
    render :status => 500   end

end

app/views/errors/not_found.html.erb

<label> TEST 404 Label </label>

很可能您已正确配置这些页面并且代码可以工作,但不适用于您正在使用的环境。在目录 config/environments 中,您应该有三个文件:development, test, production。当您在开发中工作时,它不会呈现您创建的那些页面,因为它默认为 Rails 错误。您应该检查 config/environments/development.rb 并查看 config.consider_all_requests_local 设置的内容。您可以将其更改为 false,重置路由器并能够看到错误页面,然后在继续进一步开发时将其换回 true。请注意,您使用的实现看起来像是 exception_handler gem 的替代方案,并且会处理错误而不是 gem。

您可以在 Rails 指南中找到更多信息:http://guides.rubyonrails.org/configuring.html#rails-general-configuration

我忘了 运行 rails g exception_handler:views 这会在我的项目文件中生成所有视图,现在我可以根据自己的喜好自定义它们。