Jul*_*ray 5 ruby ruby-on-rails
我不太清楚Rails如何包含(或不?)app目录中的某些文件.
例如,我创建了一个新的目录app/exceptions来创建我自己的异常.现在,从帮助文件中,我想提出一个异常.
我想在这个助手中加入一些东西吗?
助手:助手/ communications_helper.rb
//should I include something or it's suppose to be autoloaded?
module CommunicationsHelper
begin.
.
.
.
raise ParamsException, "My exception is lauch!"
rescue StandardError => e
...
end
end
Run Code Online (Sandbox Code Playgroud)
例外:exceptions/params_exception.rb
class ParamsException < StandardError
def initialize(object, operation)
puts "Dans paramsException"
end
end
Run Code Online (Sandbox Code Playgroud)
没有什么具体来自我在产出中的提升......
谢谢!
编辑:谢谢大家,你的两个答案以不同的方式有所帮助.我没有像你说的那样提高异常,但我也要忘记更新我的config.rb.所以我现在:
rescue StandardError => e
raise ParamsError.new("truc", "truc")
Run Code Online (Sandbox Code Playgroud)
其他问题,你知道我在哪里能加注吗?因为我已经陷入困境,所以我很少迷路......
首先,我认为您错误地提出了例外。
在您的自定义异常类中,您的初始化方法接受参数。因此你应该用以下方法来提高它:
raise CustomError.new(arg1, arg2, etc.)
Run Code Online (Sandbox Code Playgroud)
读这个。
最后,如果 CustomError 是 StandardError 的子级,则不要从 StandardError 中拯救;否则你的手动“加注”将会被拯救。
| 归档时间: |
|
| 查看次数: |
4313 次 |
| 最近记录: |