Class: ScrapeCarmen

Inherits:
Object
  • Object
show all
Defined in:
app/services/scrape_carmen.rb

Class Method Summary collapse

Class Method Details

.import(source, parent = nil) ⇒ Region

Parameters:

  • source (Carmen::Region)

Returns:



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'app/services/scrape_carmen.rb', line 11

def self.import(source, parent = nil)
  region = Region.find_or_initialize_by(region: parent, code: source.code)
  region.name = source.name
  region.category = source.type

  if source.type == 'country'
    region.alpha_3_code = source.try(:alpha_3_code)
    region.numeric_code = source.try(:numeric_code)
  end

  region.save!

  source.subregions.each { |sr| import(sr, region) }

  region
end

.runObject



3
4
5
6
7
# File 'app/services/scrape_carmen.rb', line 3

def self.run
  Carmen::Country.all.each do |country|
    import(country)
  end
end