Я пишу процедуру импорта, которая позволит пользователю загрузить файл CSV для загрузки своей базы данных. Каждая строка CSV соответствует модели .Импорт - csv to activerecord - обработка ошибок в Rails
Я использую FasterCSV, чтобы прочитать файл и разделить данные на отдельные модели, которые отлично работают. У меня просто возникают проблемы с выбором лучшего подхода к обработке ошибок.
Прямо сейчас я это происходит, но это действительно кажется мне неправильным:
def import(collection)
begin
self.transaction do
collection.collect{|object| object.save!}
end
rescue ActiveRecord::RecordInvalid => invalid
return false
end
return true
end
Есть ли лучше способ сохранить коллекцию моделей?