2016-12-16 9 views
0

ymlに2つのプロパティの配列を作成するにはどうすればよいですか?ymlに2つのプロパティの配列を作成するにはどうすればよいですか?

例: 従業員の配列。各従業員には2つのプロパティ、名前、年齢があります

employee: 
-name : emp1 
age : 20 
-name :emp1 
age : 20 

これは間違いありませんか?

がどれ最終的に私は代わりに男に魚を与えるのルビー

def readEmployees 
     [ 
      {name: 'emp1', age: '20'}, 
      {name: 'emp2', age: '30'}, 
     ] 
end 

答えて

1

でそれを返すようにしたい、私は生涯のために彼を養うつもりです。あなたはどのように構造がyamlで提示されるのか知りたいですか?それを確認してください:読者のために

inp = [ 
    {name: 'emp1', age: '20'},    
    {name: 'emp2', age: '30'},    
]   
inp.to_yaml 
#⇒ "---\n- :name: emp1\n :age: '20'\n- :name: emp2\n :age: '30'\n" 

を、上記yamlは次のとおりです。

--- 
- :name: emp1 
    :age: '20' 
- :name: emp2 
    :age: '30' 
0

この:

employee: 
-name : emp1 
age : 20 
-name :emp1 
age : 20 

は正しいYAMLではありません。二つの理由:

  • あなたはいつもあなたが持っているとき以外は必要とされている第二の要素(内emp1前に、コロンの後にスペースを挿入しませんでしたシーケンス要素
  • を示しダッシュの後にスペースを挿入しませんでした引用されたスカラー:{"name":"emp1"}

マッピングの値からキーを区切るコロン+スペースの前にスペースを挿入することも慣例ではありません。

employee: 
- name: emp1 
    age: 20 
- name: emp1 
    age: 20 

また、YAMLには配列のようなものはなく、プロパティもありません。 YAMLシーケンスはRubyの配列として表現され、プロパティはマッピングに属するYAMLのキーと値のペアです。

関連する問題