1

关于数组访问中的数组的一个小 Twig 问题。我有以下脚本,它本质上是列出类别,然后是与每个类别关联的子类别。

{% for category in categories %}

    <li>
        <a href="#">{{ category.name }}</a>

        {% if category.subcategories|length > 0 %}

        {% set subcategories  = category.subcategories %}

        <ul>
            {% for subcategory in subcategories %}

            <li>
                <a href="#">{{ subcategory.name }}</a>
            </li>

            {% endfor %}
        </ul>
        {% endif %}
    </li>

{% endfor %}

上面的脚本不显示子类别,我不知道为什么。主要问题是永远不会访问 for 循环这一事实。在设置后立即转储子类别变量会显示预期的,即它包含正确的数组和一个元素。

有任何想法吗?

转储子类别变量显示:

array (size=2)
  0 => 
    array (size=2)
      'id' => int 1
      'name' => string 'Dolls' (length=5)
  1 => 
    array (size=2)
      'id' => int 2
      'name' => string 'Test' (length=4)
4

1 回答 1

1

在这种情况下,问题实际上根本与 Twig 无关,而是应用于将所有内容放在一起的li项目的类,该类仅在应用特定类时才显示内容。

以一种非常奇怪的方式,当未应用该类时,节点只是被 JS 删除,因此 firebug 不会拾取它。最终在页面源代码上偶然发现了它,这就是我找到解决方案的方式。

于 2013-09-08T23:16:03.703 回答