Saving data from a hash to a YAML file

ruby, ruby-on-rails

Solution

The right way would be like this:

require 'yaml'
array_of_hashes = [{:"client-1.domaine.net"=>"www.client-1.domaine.net/index.html/xxxxxx"},{:"client-2.domaine.net"=>"www.client-2.domaine.net/index.html/xxxxxx"}]

File.open("lib/yamlfile.yml","w") do |file|
   file.write array_of_hashes.to_yaml
end 

This works with a hash of hashes as well...

Problem

When I try to save data from a hash to a file, I only get the last line of my hash. What is going wrong? ``` h= {} infoArray.zip(href) {|a,b| h[a.to_sym] = b } # i convert two array in hash File.open("lib/alreadyPass.yml","w") do |file| file.write h.to_yaml end ``` An example of my hash is: ``` {:"client-1.domaine.net"=>"www.client-1.domaine.net/index.html/xxxxxx"} {:"client-2.domaine.net"=>"www.client-2.domaine.net/index.html/xxxxxx"} ``` And the output YAML file I am getting is: ``` --- :client-1.domaine.net: - www.client-1.domaine.net/index.html/xxxxxx ```

Original source