Обработка ошибок в Ruby 1.9.2 - PullRequest
0 голосов
/ 15 марта 2011

У меня есть метод Ruby, который повторяет цикл (loop_a) и вызывает другую функцию (do_something) каждый раз через цикл. Я хочу, чтобы Ruby перешел к следующему циклу loop_a, даже если он имеет функцию do_something, выдающую ошибку. Я использую код обработки исключений ниже, но приложение продолжает останавливаться на ошибке. Может кто-нибудь сказать мне, что я делаю не так?

loop_a.each do |str1|
  do_something(str1)
  rescue Exception => e
    Logger.error 'An error occurred: #{e}"
end

1 Ответ

6 голосов
/ 15 марта 2011

Вам нужно иметь begin, rescue, & end.Вы также открывались с одинарной кавычкой и закрывались с двойной кавычкой.

loop_a.each do |str1|
  begin
    do_something(str1)
  rescue Exception => e
    Logger.error "An error occurred: #{e}"
  end
end

Возможно, вы захотите узнать больше об обработке исключений в Ruby .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...