Class: Spotlight::AddUploadsFromCSV

Inherits:
ActiveJob::Base
  • Object
show all
Defined in:
app/jobs/spotlight/add_uploads_from_csv.rb

Overview

Process a CSV upload into new Spotlight::Resource::Upload objects

Instance Method Summary collapse

Instance Method Details

#perform(csv_data, exhibit, _user) ⇒ Object



13
14
15
16
17
18
19
20
21
22
23
24
# File 'app/jobs/spotlight/add_uploads_from_csv.rb', line 13

def perform(csv_data, exhibit, _user)
  encoded_csv(csv_data).each do |row|
    url = row.delete('url')
    next unless url.present?

    Spotlight::Resources::Upload.create(
      remote_url_url: url,
      data: row,
      exhibit: exhibit
    )
  end
end