Как нарезать петлю в Twig - PullRequest
0 голосов
/ 14 мая 2019

Это вопрос рефакторинга. Код работает как есть, я просто не доволен им в эстетическом смысле. Я хотел бы знать, может ли условное условие внутри цикла быть записано более коротким, более читаемым способом или, возможно, может быть удалено?

{% set i = 0 %}
{% for element in list %}
  {% if loop.first %}<div class="row">{% endif %} {# open first row #}

  {% if i > 2 %} {# new row every 3 elements #}
    {% set i = 0 %}
    </div>
    <div class="row">
      <img src="{{ element.url }}">
  {% else %}
    {% set i = i+1 %}
    <img src="{{ element.url }}">
  {% endif %}

  {% if loop.last %}</div>{% endif %}
{% endfor %}

1 Ответ

0 голосов
/ 14 мая 2019

Как сказал пользователь DarkBee, взгляните на пакет.

{% for element in list|batch(3) %}
 .....
 .....
{% endfor %}

Просто для примера на этой странице.

Пакетная документация

Привет

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...