我想在我的应用程序中出现异常时发送电子邮件并呈现常规500页。我找不到如何执行500页渲染:
class ApplicationController < ActionController::Base
rescue_from StandardError do
send_email_of_error
# what goes here?
end
...
end
答案 0 :(得分:10)
再次提出异常可能是你想要的:
rescue_from StandardError do |exception|
send_email_of_error
raise exception
end
您也可以致电render
来渲染您自己的网页,the docs有一个示例。
但为什么重新发明轮子? exception notifier gem已经执行此操作,可以自定义和测试。
答案 1 :(得分:2)
这种方法可能符合您的需求:
class ApplicationController < ActionController::Base
rescue_from Exception, :with => :render_500
def render_500(exception)
@exception = exception
render :template => "shared/500.html", :status => 500
end
end
答案 2 :(得分:-1)
可能看看哨兵是有用的,是什么使系统中的一堆信息自动发出通知。