2014-10-04 4 views
0

Я начинаю узнавать Twig, но как вы можете проверить первый, второй, третий, ... элемент цикла for Twig?Проверяем для каждого -n-элемент в цикле Twig

Я хотел бы добавить GMap для каждого адреса, каждый с классом gmap_one, gmap_two, gmap_three, ....

{% for company in companies %} 
    <li> 
      <p>{{ company.Company() }}</p> 
      <p>{{ company.Contactperson() }}</p> 
      <p>{{ company.Phone() }}</p> 

      <div class="gmap gmap_one"> 
      <script> 
        var gmap_address_one = {{ company.Address() }}; 
      </script> 
    </li> 
    {% endfor %} 

ответ

0

Проблема решена:

{% set gmap = ['one', 'two', 'three'] %} 
{% for company in companies %} 
<li> 
     <p>{{ company.Company() }}</p> 
     <p>{{ company.Contactperson() }}</p> 
     <p>{{ company.Phone() }}</p> 

     <div class="gmap gmap_{{ gmap[ loop.index-1] }}"> 
     <script> 
       var gmap_address_{{ gmap[ loop.index-1] }} = {{ company.Address() }}; 
     </script> 
</li> 
{% endfor %} 
+0

Вы можете использовать переменную цикла 'loop.index0' Возвращает текущую итерацию цикла. (Индексируется 0). Описано в [doc] (http://twig.sensiolabs.org/doc/tags/for.html#the-loop-variable). Таким образом, вы можете удалить выражение '-1' – Matteo

+1

Cool. Благодаря!!! – Lilly