Как разобрать файл YAML?

Я хотел бы знать, как разобрать файл YAML со следующим содержимым :

--- 
javascripts: 
- fo_global:
  - lazyload-min
  - holla-min

В настоящее время я пытаюсь разобрать это следующим образом:

@custom_asset_packages_yml = (File.exists?("#{RAILS_ROOT}/config/asset_packages.yml") ? YAML.load_file("#{RAILS_ROOT}/config/asset_packages.yml") : nil)
    if !@custom_asset_packages_yml.nil?
      @custom_asset_packages_yml['javascripts'].each{ |js|
        js['fo_global'].each{ |script|
         script
        }
      }
    end

Но это, похоже, не работает и выдает ошибку, что значение равно нулю.

You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.each

Если я попробую это, будет выведена вся строка (fo_globallazyload-minholla-min):

if !@custom_asset_packages_yml.nil?
          @custom_asset_packages_yml['javascripts'].each{ |js|
            js['fo_global']
          }
        end
201
задан the Tin Man 30 May 2012 в 22:52
поделиться