Zola: доступ к дополнительным данным из заголовка toml
Я пытаюсь добавить пользовательские данные на страницы в Zola. Мой заголовок toml выглядит примерно так:
+++
title = "Some book"
authors = "Mr. A, Mrs. B"
url = "https://www.books.com/blabla"
cover = "isbn.jpg"
+++
Я хочу получить доступ к дополнительным полям в моих шаблонах. Согласно документам, я ожидал, что данные появятся в поле. Пробовал вот так:
{% for p in section.pages %}
<li>{{ p.title }}
<img src='{{ p.extra["cover"] }}'></img>
</li>
{% endfor %}
Заголовок отображается правильно, поэтому итерация страниц в целом работает нормально. Но пусто. Я также пытался перебрать
extra
и отображать содержимое, но оно всегда кажется пустым.
Как мне получить доступ к «дополнительным данным» в моих шаблонах?
1 ответ
Вы не устанавливаете никаких дополнительных данных в своем заголовке, поэтому, конечно,
p.extra
карта пуста.
Попробуйте установить данные:
+++
title = "foo"
[extra]
cover = "isbn.jpg"
+++
Этот кусок между
+++
- это просто TOML, поэтому вам нужно определить новый раздел "extra", что вы и делаете с
[extra]
обозначение показано выше!