【发布时间】:2019-03-28 19:40:03
【问题描述】:
我在控制器中有两个操作方法,它们具有相同的重复代码,可以挽救两种不同类型的异常:
def wave
...do something here...
rescue ActionController::ParameterMissing => e
render :json => {:error => e.message}, :status => 422
rescue Vendor::ApiError => e
render :json => {:error => e.message}, :status => 500
end
def run
...do something different here...
rescue ActionController::ParameterMissing => e
render :json => {:error => e.message}, :status => 422
rescue Vendor::ApiError => e
render :json => {:error => e.message}, :status => 500
end
是否可以将救援处理程序重构为一个公共私有方法,并从 run 和 wave 方法中调用?
【问题讨论】:
标签: ruby-on-rails ruby exception-handling refactoring