保存包含在变量中的内容

时间:2016-10-20 10:55:39

标签: twig

我有一个twig模板,使用batch()制作一些类似的列:

{% set rows = collection|batch(3) %}

如此处所述:http://twig.sensiolabs.org/doc/filters/batch.html此函数使用第二个参数来定义用于“缺失”元素的字符串。

我正在寻找类似的东西:

{% set html = include 'path/to/file.html.twig' %} <-- parse error
{% set rows = collection|batch(3, html) %}

有没有办法做到这一点或我可以/应该做的其他事情?

1 个答案:

答案 0 :(得分:4)

您可以使用以下代码段分配一大块文字:

main.twig

{% set foo %}
    {% include 'foo.twig' %}
{% endset %}

{% set items = ['a', 'b', 'c', 'd', 'e', 'f', 'g'] %}

<table>
{% for row in items|batch(3, foo) %}
    <tr>
        {% for column in row %}
            <td>{{ column }}</td>
        {% endfor %}
    </tr>
{% endfor %}
</table>

foo.twig

<div>
    <h1>Foo</h1>
</div>

twigfiddle