7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# File 'lib/ipligence/utils.rb', line 7
def self.repopulate_db(file_path)
index = 0
total_lines = File.open(file_path).readlines.size
Ipligence::Record.destroy_all
CSV.foreach(file_path) do |row|
Ipligence::Utils.log "Populating line [#{index + 1}/#{total_lines}]: #{row}"
Ipligence::Record.create!(
:ipblock_from => row[0],
:ipblock_to => row[1],
:country_code => row[2].empty? ? nil : row[2],
:country_name => row[3].empty? ? nil : row[3],
:continent_code => row[4].empty? ? nil : row[4],
:continent_name => row[5].empty? ? nil : row[5],
:time_zone => row[6].empty? ? nil : row[6],
:region_code => row[7].empty? ? nil : row[7],
:region_name => row[8].empty? ? nil : row[8],
:owner => row[9].empty? ? nil : row[9],
:city_name => row[10].empty? ? nil : row[10],
:county_name => row[11].empty? ? nil : row[11],
:post_code => row[12].empty? ? nil : row[12],
:area_code => row[13].empty? ? nil : row[13],
:metro_code => row[14].empty? ? nil : row[14],
:latitude => row[15].empty? ? nil : row[15],
:longitude => row[16].empty? ? nil : row[16]
)
index += 1
end
Ipligence::Utils.log "Repopulation completed!"
end
|