2016-12-16 79 views
0

我們如何在yml中創建2個屬性的數組?我們如何在yml中創建2個屬性的數組?

例如: 員工數組。每個員工有2個屬性,名稱和年齡

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

這是正確的嗎?

任何最後我想在Ruby中返回它

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鍵值對。

相關問題