在液体模板中迭代哈希
我在使用Liquid的Jekyll写一个网站。
我有前面的问题,我想看起来像这样的页面:
--- 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>
但是迄今为止我所有的想法都使我失望了。
当使用称为hash
的variables遍历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 %}
我会在YAML中像这样定义它们:
links: demo: http://www.github.com/copperegg/mongo-scaling-demo
然后迭代:
{% for link in page.links %} <a href="{{ link[1] }}">{{ link[0] }}</a> {% endfor %}
{% for link in page.links %} {% for item in link %} <a href="{{ item[0] }}">{{ link[1] }}</a> {% endfor %} {% endfor %}
我有一个非常相似的问题,但我有我的variables中的多个项目,所以我使用了无证的item
variables,它做了这项工作。