YAML中的嵌套列表与Middleman中的ERB迭代输出

时间:2016-10-27 10:30:53

标签: nested erb middleman middleman-4

我希望能够在我的YAML文件中包含不确定数量的列表,如果有任何已定义的列表,则在输出其内容的模板文件中迭代地循环它们。

我目前正在使用以下YAML格式;

:list
  :has_list: true
  :list_tables:
    :list_table_1
      -  name: list name
      -  data: data name

我目前正在使用以下模板代码;

<% if entry[:list][:has_list] %>
    <% entry[:list][:list_tables].each do |l| %>
        <%= l.name %>
        <%= l.data %>
    <% end %>
<% end>

但是我的数据应该是空白。它输出为真,因为如果我放入一个else块并且玩转,我可以看到逻辑的特定部分正在工作。它就是最终输出表数据的地方。我想我一定做错了但我不知道是什么。这不是错误的,这是奇怪的。

1 个答案:

答案 0 :(得分:0)

你的yaml有效吗?它在http://www.yamllint.com/http://codebeautify.org/yaml-validator没有传递给我 {{3}}

我将其更改为以下验证

list: has_list: true list_tables: - list_table_1: - name: "list name" - data: "data name" - list_table_2: - name: "list name" - data: "data name"