Macros - WishMaster2310/starter GitHub Wiki
Ссылка на доку по макросам
Хорошо если, любой составной компонент в вашей разметке будет создан с использованием макросов.
Например для карточки с новостями создаем файл NewsCard.html
в папке views/macros
{% macro render(data) %}
<div class="news">
<img class="news__image" alt="{{ data.title }}" />
<a href="{{ data.url }}" class="news__title">{{ data.title }}</a>
<div class="news__description">{{ data.description | truncate(60) }}<div>
</div>
{% endmacro %}
А затем использем наш макрос в шаблоне страницы
{% import '/macros/NewsCard.html' as NewsCard %}
{% for newsItem in newsList %}
{{ NewsCard.render(newsItem) }}
{% endfor %}