0
Rubyとシェフが初めてです。データバッグ(chef_vault)からネストされた要素を取得する方法を理解できません。これはもっと基本的なRubyの質問だと思うけど、シェフが特定のものかどうかわからない。chef_vaultとrubyコレクションを理解しようとしています
私はこのボールトを作成しました:今、私は、コンソールに何を参照してください
test_vault = ChefVault::Item.load("test_vault", "vaultitem1")
puts test_vault.class
puts test_vault['SUBKEY1'].class
puts test_vault['SUBKEY1'].inspect
puts test_vault['SUBKEY1'][0]['SUBKEY2']
:ここ
$json = '{
"KEY1": [{
"SUBKEY1": "aaaaa",
"SUBKEY2": "bbbbbbb",
"SUBKEY3": "cccccccc"
}],
"KEY2": [{
"SUBKEY1": "dddddd",
"SUBKEY2": "eeeeee"
}],
"KEY3": "fffffff",
"KEY4": "ggggggg"
}'
knife vault create test_vault vaultitem1 $json --admins red888 --mode client --search 'role:testservers'
は私のレシピでそれのうちネストされた要素を取得しようとしたとき、私は気づいたものです
ChefVault::Item
Array
[{"SUBKEY1"=>"aaaaa", "SUBKEY2"=>"bbbbbbb", "SUBKEY3"=>"cccccccc"}]
{"SUBKEY1"=>"aaaaa", "SUBKEY2"=>"bbbbbbb", "SUBKEY3"=>"cccccccc"}
bbbbbbb
元私はエラーを与えたtest_vault['KEY1']['SUBKEY2']
を試しました。私の質問は、なぜ私がしなければならないのですかtest_vault['KEY1'][0]['SUBKEY2']
私は[0]でインデックスを作成していますか?