使用jekyll / liquid如何获取yaml哈希的所有键

问题描述 投票:3回答:2

我有这个yaml

param1:
  key1: value1
  key2: value2

param2:
  key1: value1
  key2: value2

param3:
  key1: value1
  key2: value2

如何用液体取出所有钥匙?

预期的结果是

param1,param2,param3

任何的想法?

  • 非常丑陋的解决方案:集合上的{%for%}和连接键......
  • 可接受的替代解决方案:创建一个液体过滤器“键”......声音太大,实际上并不存在......
collections yaml jekyll liquid
2个回答
1
投票

我建议你为你的yml文件另一种格式

- id: param1
  key1: value1
  key2: value2

- id: param2
  key1: value1
  key2: value2

- id: param3
  key1: value1
  key2: value2

然后你可以使用{{ site.data.file | map: "id" | join: "," }}


0
投票

好的,我实现了一个小过滤器来获取哈希键:

https://github.com/dalenys/jekyll-keys-filter

只需写下以下内容:

{{ hash | keys }} 
© www.soinside.com 2019 - 2024. All rights reserved.