我正在尝试填充网格,但我不知道如何使用变量调用对象方法。变量“菜单”是我的实体,“itens”是一个数组,其中包含我想在此网格中显示的内容。
$itens = array(
array('name' => 'id', 'label' => 'Id'),
array('name' => 'parent', 'label' => 'Pai'),
array('name' => 'name', 'label' => 'Nome'),
array('name' => 'route', 'label' => 'Rota'),
array('name' => 'position', 'label' => 'Posição'),
);
这是我的代码:
{% for menu in menus %}
<tr>
{% for item in itens %}
<td>{{ attribute(menu, item['name']) }}</td>
{% endfor %}
</tr>
{% endfor %}
我也尝试过menu.item ['name'],但没有成功......有什么想法吗?
答案 0 :(得分:8)
我明白了!我这样做了:
{% for menu in menus %}
<tr>
{% for item in itens %}
{% set method %}{{ item['name'] }}{% endset %}
<td>{{ attribute(menu, method) }}</td>
{% endfor %}
</tr>
{% endfor %}