树枝中的逗号分隔列表

2022-08-30 11:35:59

在列表的每个元素(最后一个元素除外)之后添加逗号的最短(也是最清晰)的方法是什么?

{% for role in user.roles %}
    {{ role.name }},
{% endfor %}

此示例将在所有行(包括最后一行)后添加逗号。


答案 1

不知道最短,但这可能很清楚。请尝试以下操作,在循环中的所有行(最后一行除外)之后添加逗号:

{% for role in user.roles %}
    {{ role.name }}
    {% if not loop.last %},{% endif %}
{% endfor %}

评论中建议的较短版本:

{% for role in user.roles %}
    {{ role.name }}
    {{ not loop.last ? ',' }}
{% endfor %}

答案 2

这适用于Symfony 2.3.x,但应该适用于每个2.x版本:

{{ user.roles|join(', ') }}

推荐