Могу ли я вложить несколько объектов шаблона в другой шаблон хамелеона?

Скажем, у меня был файл шаблона хамелеона для объекта пользователя с чем-то вроде этого:

<h2><tal:content="user.name"></h2>
<h4><tal:content="user.occupation"></h4>
<p><tal:content="user.bio"></p>

Можно ли зациклить список пользователей в другом файле шаблона, чтобы заполнить несколько слотов контента, как показано ниже?

<tal:block repeat="user users">
    <div metal:define-slot='user'></div> <!-- ??? -->
</tal:block>

Я полагаю, что это может быть полезно, если на странице есть список сложных объектов с большим количеством данных для отображения, но я ничего не могу найти по этому поводу, и я не знаю, какие поисковые запросы дать Google.

Прямо сейчас у меня просто что-то вроде этого:

<tal:block repeat="user users">
    <h2><tal:content="user.name"</h2>
    <h4><tal:content="user.occupation"></h4>
    <p><tal:content="user.bio"></p>
</tal:block>

это достаточно хорошо для меня, но мне просто интересно, возможно ли то, что я спрашиваю.

1 ответ

То, что вы ищете, это металлические макросы. Сначала они сбивают с толку, но очень мощные, как только вы начинаете думать об этом.

https://chameleon.readthedocs.org/en/latest/reference.html?highlight=metal

НТН

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