我按照http://ariejan.net/2011/10/14/rails-3-customized-exception-handling/上的说明进行操作,遇到了障碍。
我对 Rails 比较陌生,所以我不确定我做对了什么/不太对。
第一步是创建类
MyApp::ProfileNotFoundError < StandardError
end
所以我去了 app/models 并创建了 profile_not_found.rb ,其中包含以下内容,其中 (APP) 是我的应用程序的名称,由 Rails.application.class.parent_name 定义,但为了安全/隐私,我已经隐藏了这篇文章。
(APP)::ProfileNotFoundError < StandardError
end
在 app/controllers/application_controller.rb 我添加
rescue_from (APP)::ProfileNotFoundError, :with => :profile_not_found
在我的登录控制器中我添加了
raise (APP)::ProfileNotFoundError if @profile.nil?
但是,当我尝试测试代码时,我得到一个路由错误说明
uninitialized constant (APP)::BlankUsernameError
在我看来,这表明我在创建类方面做错了,但是教程太模糊了,我无法弄清楚。任何指针?
我在 Ubuntu 12.04.2 x86_64 上运行 Rails 3.0.20 和 Ruby 1.8.7