2014-09-18 3 views
3

У меня есть цикл в прута:Прут, фильтр петлю

{% for date in dates %} 
    <li>{{date}}</li> 
{% endfor %} 

мне нужно использовать, для этого цикла, всего 5 элементов моего массива (0-5), после чего в течение второго цикла, Мне нужно использовать следующие 5 элементов (6-11) и т. Д.

Как я могу это сделать?

+0

Возможный дубликат [зацикливание в ветке и разрыв после трех итераций] (http://stackoverflow.com/questions/16755523/зацикливание-в-прутика-и-обкатка после трех-итерации) – lxg

ответ

5

Вы можете использовать slice

{% for date in dates|slice(0, 5) %} 
    <li>{{date}}</li> 
{% endfor %} 

для следующего цикла

{% for date in dates|slice(5, 5) %} 
    <li>{{date}}</li> 
{% endfor %} 
2

Вы можете использовать slice фильтр

{% for i in dates|slice(start, length) %} 
    <li>{{date}}</li> 
{% endfor %} 

Таким образом, в основном, первый раз, когда вы установите start = 0 и length = 4 (если вам нужно 5 элементов, которые вы не должны итерации от 0 до 5, поскольку число равно шестью), в следующий раз от 5 до 9 и т. д.

Смежные вопросы