2012-03-30 7 views
0

Je cherche à prendre un fichier YAML existant, configuré comme ceci:Parse fichier YAML existant pour créer un nouveau modèle (supprimer la valeur de paire clé-valeur)

en: 
    calendars: 
    gregorian: 
     days: 
     format: 
      abbreviated: 
      fri: Fri 
      mon: Mon 
      sat: Sat 
      sun: Sun 
      thu: Thu 
      tue: Tue 
      wed: Wed 
      narrow: :"calendars.gregorian.days.stand-alone.narrow" 
      wide: 
      fri: Friday 
      mon: Monday 
      sat: Saturday 
      sun: Sunday 
      thu: Thursday 
      tue: Tuesday 
      wed: Wednesday 
(etc.) 

et supprimer les valeurs de la Key- valeur paire. Fondamentalement, il ressemblerait à ceci:

en: 
    calendars: 
    gregorian: 
     days: 
     format: 
      abbreviated: 
      fri: 
      mon: 
      sat: 
      sun: 
      thu: 
      tue: 
      wed: 

je Psych 1.9.3 pour importer le fichier YAML comme un hachage (Psych.load_file etc.) - est-il une fonction que je peux appeler via Psych ou peut-être juste pour enlever Ruby plaine toutes les valeurs de ces paires?

Répondre

1

Si le yaml a été chargé dans un hachage, utilisez simplement ruby ​​pour transformer la structure de données.

format = loaded_yaml['en']['calendars']['gregorian']['days']['format'] 
format['abbreviated'] = format['abbreviated'].keys.inject({}) {|m,k| m[k] = nil; m } 
Questions connexes