1
シェフのデータバッグアイテムに配列のハッシュデータを含めることを試みています。これはサポートされていますか?私は定義されていないメソッドに関するエラーメッセージを受け取り続けます。ここでは例です:シェフのデータバッグに配列がありますか?
Databag項目:
{
"id": "BurgerKing",
"sandwich": "Whopper",
"nickname": "BK",
"value_meals":[
{
"sandwich": "Big King",
"side": "Fries",
"drink": "Coke"
},
{
"sandwich": "Kids Burger",
"side": "Apple Slices",
"drink": "Milk"
}
]
}
テンプレート:
<!-- I want to go to <%= @restaurant[ 'nickname' ] %> to get a <%= @restaurant['sandwich'] %>. -->
<!-- But there are also value meals... -->
<% @restaurant.value_meals.each do | meal | %>
<!-- <%= meal.sandwich %>, <%= meal.side %>, and <%= meal.drink %> -->
<% end -%>
私はサンドイッチとニックネームフィールドにアクセスした場合、私はすぐに私はにコードを追加すると偉大なんだけど、 value_mealsを繰り返し、取得します。
Chef::Mixin::Template::TemplateError (undefined method `value_meals' for #<Chef::DataBagItem:0x00000002d07df0>) on line #6:
4: <!-- I want to go to <%= @restaurant[ 'nickname' ] %> to get a <%= @restaurant['sandwich'] %>. -->
5: <!-- But there are also value meals... -->
6: <% @restaurant.value_meals.each do | meal | %>
7: <!-- <%= meal.sandwich %>, <%= meal.side %>, and <%= meal.drink %> -->
8: <% end -%>
ありがとうございます!!!
ありがとうCodeRanger !!!
コメントを書式設定するための技巧はまだないので、ここでそれを修正して、以下を追加してください。
<!-- But there are also value meals... -->
<% @restaurant['value_meals'].each do | meal | %>
<!-- <%= meal[ 'sandwich' ] %>, <%= meal[ 'side' ] %>, and <%= meal[ 'drink' ] %> -->
<% end -%>
ありがとうございます!それを次のように変更しました:<! - しかし値段の食事もあります - > <%@レストラン['value_meals']。食事| %>食事['サイド']%>、<%=食事['飲み物']%> - > <% end -%> <%=食事['サンドウィッチ']%>、<%=食事['飲み物']%> それはチャンピオンのように働いた!ひどい書式設定のためのお詫び... –