jekyll - 什么 Jekyll 语法来过滤 Front Matter 中的键:值对?
问题描述
在我的 Jekyll 站点中,我有一个页面,其中存储了前面的数据数组,如下所示:
---
layout: page
title: MyTitle
array:
- key1: value1
- key2: value2
---
我想在我的模板中做什么:给定一个keyX ,从数组中获取valueX 。
我想出了一种访问数组的方法:
{% assign subpage = site.pages | where: 'title', 'MyTitle' %}
{% assign array = subpage[0].array %}
现在我需要编写的查询是:“从数组中提取与keyX匹配的值”。
有没有一种方法可以搜索数组,而不需要循环?我能找到的所有例子都是基于一维数组......
解决方案
您的数组是一组非标准化对象(它们没有相同的键)。
{{ page.array | inspect }}
返回
[{"key1"=>"value1"}, {"key2"=>"value2"}]
这里唯一的搜索方法是遍历所有数组的项目。
如果将数组重构为对象,则可以从键中获取值。
---
[...]
object:
key1: value1
key2: value2
...
例子 :
{% assign searched = "key1" %}
{{ page.object[searched] }}
推荐阅读
- python - For 循环嵌套在 if 语句中。嵌套在 for 循环中的 if 语句
- javascript - 如何在加载动态字体的反应中显示下载百分比
- python - “请求”对象未从烧瓶模块导入
- python - Python如何在更新函数问题中的变量之间放置一个空格
- node.js - 多个位置的 NGINX 反向代理不起作用
- node.js - 如何使用 Jest 测试使用粉笔的 console.log?
- c++ - 用于验证的可变参数模板
- python - Python Group by 基于行中的不同值
- string - Powershell字符串连接之谜
- php - Gif 图像在本地主机上加载,但不在托管服务器/实时站点上