Обработка ошибок smarterCSV
SmarterCSV по умолчанию вызывает исключение, если в обрабатываемом файле CVS обнаружены дублирующиеся заголовки. Я хотел бы сообщить пользователю, что это так, но я не могу получить доступ к ошибке.
f = File.open(params[:csv_file].tempfile, "r:bom|utf-8")
users = SmarterCSV.process(f)
Если файл CSV имеет повторяющиеся заголовки, консоль выводит следующее:
SmarterCSV:: DuplicateHeaders - ОШИБКА: дубликаты заголовков: комментарии, комментарии:
Что правильно, но как мне получить доступ к ошибке? Я пробовал:
user.errors
и даже напрямую с:
SmarterCSV.errors
но когда SmarterCSV.process
сбой метода, приложение просто завершает работу, не позволяя мне делать что-либо еще.