Symfony 细枝中的实体场迭代

Symfony 细枝中的实体场迭代,symfony,twig,Symfony,Twig,我的视图中有许多重复的源代码用于显示我的实体。实际上,代码只是用于显示实体字段。例如: //... <li>{{ entity.code }}</li> <li>{{ entity.name }}</li> <li>{{ entity.createdAt|date('d-m-Y H:i:s') }}</li> <li>{{ entity.updatedAt|date('d-m-Y H:i:s') }}</

我的视图中有许多重复的源代码用于显示我的实体。实际上,代码只是用于显示实体字段。例如:

//...

<li>{{ entity.code }}</li>
<li>{{ entity.name }}</li>
<li>{{ entity.createdAt|date('d-m-Y H:i:s') }}</li>
<li>{{ entity.updatedAt|date('d-m-Y H:i:s') }}</li>
<li>{{ entity.operator }}</li>

//...
我想在细枝中进行迭代,而不逐个定义对象,就像这样:

{% for key, field in entity %}
<li>{{ field[key] }}</li>
{% endfor %}

在小树枝上可以这样做吗?或者说,这只是必须避免的坏做法,有最佳做法可以做到这一点?

创建一个细枝函数或过滤器,然后使用get\u class\u方法或get\u class\u变量

那你就可以了

{% set vars = getClassVars(entity) %}
{% for x in vars %}
  <li>{{ attribute(entity, x) }}</li>
{% endfor %}