обработка исключений в ruby ​​на рельсах - PullRequest
0 голосов
/ 13 декабря 2011

Я новичок в ruby ​​на рельсах и разрабатываю некоторые почтовые приложения, которые используют AWS SES для отправки электронных писем. Я загружаю CSV-файл, который содержит только адрес электронной почты, и на этот адрес будет отправлено письмо.

Это очень простое приложение, из-за которого мое приложение не может отправить электронное письмо по ряду причин, по которым приложение автоматически прекращает отправлять электронные письма. Но я должен продолжать отправлять электронные письма на оставшийся адрес электронной почты.

Как мне справиться с исключением. Я использовал ActionMailer.

Пожалуйста, помогите мне

Ответы [ 2 ]

2 голосов
/ 13 декабря 2011
def send_all_emails
  @emails.each do |email|
    send_one_mail email
  end
end

def send_one_mail email
  # your actual email sending code here
rescue
  # this will log error to Rails log, but will not halt the whole app
  Rails.logger.error $!
end
0 голосов
/ 25 марта 2015

Если вы хотите узнать об исключении, используйте

begin
 #some code here
rescue =>ex
 Rails.logger.error "#{ex.class.name} :  #{ex.message}"
end

ps: вы также можете использовать rescue Exception => ex . Но не используйте его, пока не потребуется.он будет перехватывать все незначительные исключения, такие как «NoMemoryError», которые нам не нужны. При использовании первого из них будут отлавливаться только стандартные ошибки.

...