Я пытаюсь построить сайт документации с Jekyll и подумал, что было бы неплохо сохранить основные ссылки в файле данных JSON.
Вот файл JSON:
{
"home": {
"name": "Home",
"path": "/",
"icon": "fas fa-home"
},
"faq": {
"name": "FAQ",
"path": "/faq",
"icon": "fas fa-question"
},
"manuals": {
"name": "Anleitungen",
"path": "/manuals",
"icon": "fas fa-book-open"
}
}
Вот мой шаблон (часть его):
<div class="navbar-menu">
<div class="navbar-start">
{% for rubrik in site.data.navigation %}
{% for part in rubrik %}
<a class="navbar-item{% if page.url == part.path %} is-active{% endif %}" href="{{ part.path }}">
<span class="icon"><i class="{{ part.icon }}"></i></span><span>{{ part.name }}</span>
</a>
{% endfor %}
{% endfor %}
</div>
</div>
Это фактически производит этот вывод:
<div class="navbar-menu">
<div class="navbar-start">
<a class="navbar-item" href="">
<span class="icon"><i class=""></i></span><span></span>
</a>
<a class="navbar-item is-active" href="/">
<span class="icon"><i class="fas fa-home"></i></span><span>Home</span>
</a>
<a class="navbar-item" href="">
<span class="icon"><i class=""></i></span><span></span>
</a>
<a class="navbar-item" href="/faq">
<span class="icon"><i class="fas fa-question"></i></span><span>FAQ</span>
</a>
<a class="navbar-item" href="">
<span class="icon"><i class=""></i></span><span></span>
</a>
<a class="navbar-item" href="/manuals">
<span class="icon"><i class="fas fa-book-open"></i></span><span>Anleitungen</span>
</a>
</div>
</div>
Вы видите, что выход удваивается, один раз с пустыми переменными внешнего цикла, во-вторыхс правильными значениями из внутреннего цикла.
Есть подсказки?Это ошибка или я просто неправильно ее использую?Не видел ни одного совета, что цикл for предназначен только для одного уровня.Jinja2, например, может сделать это.Моя используемая версия Jekyll - 4.0 (самая новая).
Заранее большое спасибо.
С уважением, Томас