简体   繁体   English

树枝嵌套数组

[英]Twig nested array

I am having issue rendering a nested array in Twig. 我在Twig中渲染嵌套数组时遇到问题。 this is my PHP logic where I am able to get other fields such as name URL but not array data. 这是我的PHP逻辑,在这里我可以获取其他字段,例如名称URL,但不能获取数组数据。 please check twig code, I think I am doing something wrong there. 请检查树枝代码,我想我在那儿做错了。 Error: An exception has been thrown during the rendering of a template ("Notice: Array to string conversion"). 错误:在呈现模板的过程中引发了异常(“注意:数组到字符串的转换”)。

foreach ($arrays as $array) {
    foreach ($array as $key => $value) {
        $allProjects[$key][] = $value;
    }
}

                      {% for project in projects %}
                        <tr>
                            <td>{{ project.name }}</td>
                            <td>{{ project.url }}</td>
                            <td>{{ project.assingedApprover }}</td>
                            <td></td>
                        </tr>
                    {% endfor %}

Json Data 杰森数据

    [
  {
    "name": "Resolute Energy Corporation",
    "url": "http://msu.edu",
    "assignedAprover": [
      {
        "firstName": "Joe",
        "lastName": "lastName"
      },
      {
        "firstName": "men",
        "lastName": "gen"
      }
    ]
  },
  {
    "name": "CBL & Associates Properties, Inc.",
    "url": "http://acquirethisname.com",
    "assignedAprover": [
      {
        "firstName": "Joe",
        "lastName": "lastName"
      },
      {
        "firstName": "men",
        "lastName": "gen"
      }
    ]
  },
]

As assignedAprover is array you can iterate over it with for : 由于assignedAprover是数组,您可以使用for对其进行迭代:

{% for project in projects %}
    <tr>
        <td>{{ project.name }}</td>
        <td>{{ project.url }}</td>
        {% for aprover in project.assignedAprover %}
        <td>{{ aprover['first_name'] }} {{ aprover['last_name'] }}</td>
        {% endfor %}
        <td></td>
    </tr>
{% endfor %}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM