Sha256: a7a2325742f703bccf59ef05ddcda0ac9bb8120b0762016f32ca3961ae71e0ad

Contents?: true

Size: 515 Bytes

Versions: 11

Compression:

Stored size: 515 Bytes

Contents

require 'yaml'

module DataSeeder
  module Loader
    class YAML
      include Loader

      def load(io)
        yaml = ::YAML.load(ERB.new(io.read).result)
        if yaml.kind_of?(Hash)
          yaml.each do |key, attr|
            attr[self.key_attribute] = key if self.key_attribute
            save(attr)
          end
        elsif yaml.kind_of?(Array)
          yaml.each { |attr| save(attr) }
        else
          raise "Don't know how to interpret #{self.path}"
        end
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
data_seeder-1.1.0 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.9 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.8 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.7 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.6 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.5 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.4 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.3 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.2 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.1 lib/data_seeder/loader/yaml.rb
data_seeder-1.0.0 lib/data_seeder/loader/yaml.rb