Sha256: 043bb090192d3d494dbb12e541ed0cc7465bd4731ac4eb7923507bf54446a038
Contents?: true
Size: 842 Bytes
Versions: 9
Compression:
Stored size: 842 Bytes
Contents
connection = ApplicationRecord.connection state_inserts = [] state_values = -> do Spree::Country.where(states_required: true).each do |country| carmen_country = Carmen::Country.named(country.name) next if !carmen_country carmen_country.subregions.each do |subregion| name = connection.quote subregion.name abbr = connection.quote subregion.code country_id = connection.quote country.id state_inserts << [name, abbr, country_id].join(", ") end end state_inserts.map { |x| "(#{x})" } end columns = ["name", "abbr", "country_id"].map do |column| connection.quote_column_name column end.join(', ') state_values.call.each_slice(500) do |state_values_batch| connection.execute <<-SQL INSERT INTO spree_states (#{columns}) VALUES #{state_values_batch.join(", ")}; SQL end
Version data entries
9 entries across 9 versions & 1 rubygems