Sha256: 3baf222abdcf89f4e75b5a07e6b68132ae00410b13f9d191e2074f22bbbb0f5a

Contents?: true

Size: 591 Bytes

Versions: 12

Compression:

Stored size: 591 Bytes

Contents

class INE::Places::PlacesCollection
  include Singleton

  def self.records
    @records ||= CSV.read("#{INE::Places::ROOT}/data/places.csv", headers: true).map do |raw_data|
                   build_from_raw_data(raw_data)
                 end.sort_by(&:slug)
  end

  def self.build_from_raw_data(raw_data)
    INE::Places::Place.new({
      id: raw_data[0], name: raw_data[2],
      slug: raw_data[3], province_id: raw_data[1],
      lon: raw_data[6], lat: raw_data[7],
      province: INE::Places::Province.find(raw_data[1])
    })
  end
  private_class_method :build_from_raw_data

end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
ine-places-0.5.0 lib/ine/places/places_collection.rb
ine-places-0.4.0 lib/ine/places/places_collection.rb
ine-places-0.3.0 lib/ine/places/places_collection.rb
ine-places-0.2.0 lib/ine/places/places_collection.rb
ine-places-0.1.7 lib/ine/places/places_collection.rb
ine-places-0.1.6 lib/ine/places/places_collection.rb
ine-places-0.1.5 lib/ine/places/places_collection.rb
ine-places-0.1.4 lib/ine/places/places_collection.rb
ine-places-0.1.3 lib/ine/places/places_collection.rb
ine-places-0.1.2 lib/ine/places/places_collection.rb
ine-places-0.1.1 lib/ine/places/places_collection.rb
ine-places-0.1.0 lib/ine/places/places_collection.rb