我正在Jekyll写一个使用Liquid的网站。
对于我希望看起来像这样的页面,我有前面的内容:
---
title: Designing algorithms that scale horizontally
speaker: Luke Ehresman, CopperEgg
category: notes.mongodallas.talks
links:
- demo: http://www.github.com/copperegg/mongo-scaling-demo
layout: talknotes
---
在Liquid中,YAML的链接部分来自:
[{'demo' => 'http://www.github.com/copperegg/mongo-scaling-demo' }]
我希望能够迭代数组,做这样的事情:
<a href="{{ link.value }}">{{ link.key }}</a>
但到目前为止我所做的任何想法都让我失望。
答案 0 :(得分:100)
使用名为hash
的变量迭代哈希时,hash[0]
包含密钥,hash[1]
包含每次迭代的值。
{% for link_hash in page.links %}
{% for link in link_hash %}
<a href="{{ link[1] }}">{{ link[0] }}</a>
{% endfor %}
{% endfor %}
答案 1 :(得分:21)
我会在YAML中定义它们:
links:
demo: http://www.github.com/copperegg/mongo-scaling-demo
然后迭代:
{% for link in page.links %}
<a href="{{ link[1] }}">{{ link[0] }}</a>
{% endfor %}
答案 2 :(得分:1)
{% for link in page.links %}
{% for item in link %}
<a href="{{ item[0] }}">{{ link[1] }}</a>
{% endfor %}
{% endfor %}
我遇到了一个非常类似的问题,但我的变量中有多个项目,所以我使用了未记录的item
变量,并完成了这项工作。