ruby 获取要迭代的Jekyll属性列表

ddarikpa  于 2022-12-26  发布在  Ruby
关注(0)|答案(1)|浏览(121)

我目前正在尝试建立一个网站,将显示团队成员使用哲基尔,并想知道是否有一个优雅的方式,使迭代和分组的人从特定的群体。
因此,对于参考点,我拥有的是一个md文件集合,它包含

name: Person Name
team: Team
image: pnglinkhere

我想知道是否有可能用这样的程序进行迭代?

{% for team in site.people | [some how get list of unique team attributes] %}
<h5>{{ team }}</h5>
{% for people in site.people %}
{% if people.team = team % }
<div>Show Person</div>
{% endif %}
{% endfor %}
{% endfor %}

任何不涉及文件夹重组的解决方案都是有益的,我主要是在寻找一种编程的方式,这样可以使更改更容易,所以如果添加了新的文件夹,我不必为新团队复制粘贴。
谢谢

lmvvr0a8

lmvvr0a81#

您的想法看起来不错。请查看https://jekyllrb.com/docs/liquid/filters/中介绍的group_by和where过滤器。
无论您使用什么筛选器或条件,您都可能需要将您的人员分配到变量。

分组依据

按给定属性对数组的项进行分组。
{{站点.成员|分组依据:“毕业年份”}}
[{“名称”=〉“2013”,“项目”=〉[...]},{“名称”=〉“2014”,“项目”=〉[...]}]

{% assign people_grouped_by_xyz = site.people | group_by: your_attribute %}
{% for team in people_grouped_by_xyz %}
...

在哪里

选择数组中键具有给定值的所有对象。
{{站点.成员|其中:“毕业_年份”、“2014年”}}

{% assign people_grouped_by_xyz = site.people | where: "your_attribute","value" %}
{% for team in people_grouped_by_xyz %}
...

相关问题