Вы можете перехватить более общие исключения, но вы должны поместить их сверху, как указано здесь
Например, чтобы перехватить все остальные исключения, вы можете сделать
rescue_from Exception, :with => :error_generic
rescue_from ... #all others rescues
Но если вы сделаете это, убедитесь, что вы хотя бы зарегистрировали исключение, или вы никогда не узнаете, что не так с вашим приложением:
def error_generic(exception)
log_error(exception)
#your rescue code
end
также вы можете определить несколько классов исключений в строке для одного обработчика:
rescue_from Exceptions::SomethingWentWrong, ActiveRecord::RecordNotFound, ... , :with => :something_went_wrong