Module: JsonOrRubyToCsv

Includes:
Helper
Defined in:
lib/json_or_ruby_to_csv.rb

Instance Method Summary collapse

Methods included from Helper

#convert_array_to_csv, #convert_hash_to_csv, #object_to_hash, #relation_to_array

Instance Method Details

#activerecord_to_csv(data) ⇒ Object



26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/json_or_ruby_to_csv.rb', line 26

def activerecord_to_csv(data)

   if data.respond_to?(:each)

    relation_to_array(data)

   else

    object_to_hash(data)

   end

end

#array_or_hash_to_csv(data) ⇒ Object



5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/json_or_ruby_to_csv.rb', line 5

def array_or_hash_to_csv(data)

  case data
  when Array
    begin
      new_data = data.map(&:to_h)
      convert_array_to_csv(new_data)
    rescue StandardError
      'Invalid format!'
    end
  when Hash
    convert_hash_to_csv(data)
  else
    'Invalid format!'
  end
end