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] обозначение показано выше!

Другие вопросы по тегам