Как вы переводите элементы массива и присоединяетесь к ним?

StackOverflow https://stackoverflow.com/questions/8820860

  •  27-10-2019
  •  | 
  •  

Вопрос

Используя Twig, как я могу перевести все элементы в массив и присоединиться к ним с помощью удара? Должен ли я использовать дополнительную переменную или есть более умный метод?

На данный момент я делаю что -то вроде этого:

{% set labels = [] %}
{% for feature in menu_item.features %}
  {% set labels = labels|merge([feature|trans([], 'features')]) %}
{% endfor %}
{{ labels | join(' / ')}}

Это отстой.

Это было полезно?

Решение

Почему бы просто не вывести контент во время цикла?

{% for feature in menu_item.features %}
  {% if loop.index0 > 0 %}/{% endif %}
  {{feature|trans}}
{% endfor %}

Другие советы

Не все должно быть сделано в «представлении».

Этот тип кода, вероятно, намного лучше помещен в логику контроллера, а затем передается в представление как объединенный результат объединенного+. Потому что в вашем примере все, что вы делаете, - это результат, который гораздо легче сделать в коде.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top