动态设置要在 Jekyll 中使用的数据文件

Set the data file to use in Jekyll dynamically

我有一个循环遍历文件数据的部分,我有几个具有相同模式的不同文件。我想对每个数据文件使用相同的部分,并使用数据文件名设置一个变量。

所以,我想改变这个:

<ul>
  {% for item in site.data.testFile %}
    <li>{{ item.nm }}</li>
  {% endfor %}
</ul>

...像这样:

<ul>
  {% assign data_file = testFile %}
  {% for item in site.data.data_file %}
    <li>{{ item.nm }}</li>
  {% endfor %}
</ul>

有办法吗?我在文档中找不到任何解释使这种事情动态化的内容。

你就快完成了,用引号将测试文件名括起来并直接使用 site.data[data_file]:

访问数据数组
<ul>
  {% assign data_file = "testFile" %}
  {% for item in site.data[data_file] %}
    <li>{{ item.nm }}</li>
  {% endfor %}
</ul>

这个不适合我。我在子文件夹中有 testFile 部分:site.data.references.subfolder

<ul>
  {% for item in site.data.references[subfolder] %}
    <li>{{ item.nm }}</li>
  {% endfor %}
</ul>