我正在编写一个Rails应用程序,我想要干掉一点点,而不是在我需要的每个控制器的顶部调用我的自定义错误类,我把它放在一个模块中,只是包含了模块。
工作代码(模块):
module ApiException
class EmptyParameter < StandardError
end
end
工作代码(Controller):
# include custom error exception classes
include ApiException
rescue_from EmptyParameter, :with => :param_error
# rescure record_not_found with a custom XML response
rescue_from ActiveRecord::RecordNotFound, :with => :active_record_error
def param_error(e)
render :xml => "<error>Malformed URL. Exception: #{e.message}</error>"
end
def active_record_error(e)
render :xml => "<error>No records found. Exception: #{e.message}</error>"
end
以下是我的问题,使用:with
命令,如何调用自定义模块中的方法?
这样的事情:rescue_from EmptyParameter, :with => :EmptParameter.custom_class
答案 0 :(得分:2)
您可以尝试这样的事情:
rescue_from EmptyParameter do |exception|
EmptyParameter.custom_class_method
end