2020-07-30 12:06:39 +02:00

49 lines
875 B
Ruby

module ActsAsCsvImport::Hook
def acts_as_csv_import(*args)
@csv_options = args.extract_options!
def self.import_csv_fields
@csv_options[:fields]
end
def self.import_csv(list, import_csv, m_odr_id=nil)
puts self.instance_methods
if self.methods.include?(:custom_csv_import)
custom_csv_import(list, import_csv, m_odr_id)
else
default_import_csv(list, import_csv, m_odr_id)
end
end
def self.default_import_csv(list, import_csv, m_odr_id=nil)
list.each do |row|
n = self.new
n.m_odr_id = m_odr_id if m_odr_id
row.each do |key, value|
eval "n.#{key} = value"
end
n.save
import_csv.import_csv_elements << ImportCsvElement.new(:element => n)
end
end
end
end