在树枝

时间:2018-05-29 07:55:34

标签: twig

我试图用Twig循环这个(对我而言)相当复杂的数组。我希望能够打印出所有元素。你会怎么做?下面是我正在尝试的数组和代码。

这是数组:https://pastebin.com/TZSANFpW

到目前为止我已经尝试了这个但它给了我错误:“注意:数组到字符串转换”

            {% for route in routes %}

            <p>
                {{ route.admin }}
            </p>

        {% endfor %}

1 个答案:

答案 0 :(得分:0)

为了读出一个完整的数组,你可以创建一些形式的递归。 您可以使用

行中的宏来实现此目的

macros.twig

{% macro readArray(array) %}
    {% import _self as macros %}
    {% if not array is iterable %}
        {{ array }}
    {% else %}
        {% for k,v in array %}
        <ul>
            <li>
            {{ k }}: {{ macros.readArray(v) }}
            </li>
        </ul>
        {% endfor %}
    {% endif %}
{% endmacro %}

main.twig

{% import "macros.twig" as macros %}

{{ macros.readArray(results) }}

example