Class: IronAdmin::Import::Parser::Csv

Inherits:
Object
  • Object
show all
Defined in:
lib/iron_admin/import/parser/csv.rb

Instance Method Summary collapse

Constructor Details

#initialize(source, encoding: "UTF-8") ⇒ Csv

Returns a new instance of Csv.



9
10
11
12
# File 'lib/iron_admin/import/parser/csv.rb', line 9

def initialize(source, encoding: "UTF-8")
  @source = source
  @encoding = encoding
end

Instance Method Details

#parseObject



14
15
16
17
18
19
20
21
# File 'lib/iron_admin/import/parser/csv.rb', line 14

def parse
  ::CSV.parse(read_source, headers: true, encoding: @encoding).filter_map do |row|
    hash = row.to_h
    next if hash.values.all? { |value| value.to_s.strip.blank? }

    hash
  end
end