【发布时间】:2015-11-04 10:43:03
【问题描述】:
警告:我不是程序员,我几乎可以肯定我用错了术语。
短:
输出数组时,如何用数据文件数组中某个键的替代值替换数组中特定键的值?
长
为简洁起见,我将使用简化示例。
我在前面有一个键/值数组的对象。
article:
name: An article
date: some date
author: Tim
我使用 jsonify 标记输出该数组,如下所示:
{{ page.article | jsonify }}
我也有这样的个人数据文件:
Tim
firstName: Tim
surname: Bradley
occupation: coffee consumer
Bob
firstName: Robert
surname: De Niro
occupation: Taxi Driver
我想要做的是输出article 数组,但用数据文件对象中的值(比如 Bradley)替换一个键(作者)的值(Tim)。
我想这个过程可能是这样的: 1.遍历数组 2.定位作者值 3. 将值匹配到对应的数据项 4. 捕获数据项的替换值 5. 将页面数组的键值替换为项目的键值替换 6.输出修改后的数组
我想选择键值属性(“author”=>“value”),而不是它的值(“Tim”),因为实际上值(“Tim”)在对象中重复了几次,我无法选择特定的 - 除非有人知道怎么说选择“作者”之后的第一个 Tim。
我不希望简单地重复数组的值,因为我设想逐个(逐页读取)添加和删除键值。
我该怎么做?
这甚至可以用液体和 jekyll 来完成吗?
这对任何人都有意义吗?
提前感谢您的帮助!
编辑:
我正在通过尝试澄清的方式添加一些 cmets。再次警告,我几乎肯定会混淆我的术语。
我做了一些研究,我输出的是一个作为 json 对象的哈希。
基本上,我希望输出将散列中特定键的值替换为从数据文件生成的相应散列 json。
在查看了可用的过滤器和运算符之后,我认为答案将在于捕获两个哈希集的输出,然后使用替换过滤器将相应数据文件的值替换为原始哈希集中的键值.
如果有人没有击败我,我会在弄清楚后发布答案 - 但我现在还有其他事情要做。
【问题讨论】: