Comparteix a través de


Etiquetes d’iteració

Les etiquetes d'iteració s'utilitzen per executar o representar un bloc de codi repetidament.

per al

Executa un bloc de codi repetidament. S'utilitza sobretot per iterar els elements en una matriu o un diccionari.

Al codi del bloc d'etiqueta, està disponible l'objecte forloop.

Codi

{% for child_page in page.children %}

<a href={{ child_page.url }}>{{ child_page.title }}</a>

{% endfor %}

Sortida

<a href=/parent/child1/>Child 1</a>

<a href=/parent/child2/>Child 2</a>

<a href=/parent/child3/>Child 3</a>

Paràmetres

Aquests paràmetres de for es poden utilitzar sols o junts.

limit

Tanca el bucle després d'un determinat nombre d'elements.

Codi

{% for child_page in page.children limit:2 %}

<a href={{ child_page.url }}>{{ child_page.title }}</a>

{% endfor %}

Sortida

<a href=/parent/child1/>Child 1</a>

<a href=/parent/child2/>Child 2</a>

offset

Comença el bucle en un índex determinat.

Codi

{% for child_page in page.children offset:1 %}

<a href={{ child_page.url }}>{{ child_page.title }}</a>

{% endfor %}

Sortida

<a href=/parent/child2/>Child 2</a>

<a href=/parent/child3/>Child 3</a>

range

Defineix un interval de números per iterar.

Codi

{% assign n = 4 %}

{% for i in (2..n) %}

{{ i }}

{% endfor %}

{% for i in (10..14) %}

{{ i }}

{% endfor }}

Sortida

2 3 4

10 11 12 14

reversed

Itera el bucle en l'ordre invers, a partir del darrer element.

Codi

{% for child_page in page.children reversed %}

<a href={{ child_page.url }}>{{ child_page.title }}</a>

{% endfor %}

Sortida

<a href=/parent/child3/>Child 3</a>

<a href=/parent/child2/>Child 2</a>

<a href=/parent/child1/>Child 1</a>

cicle

Itera un grup de cadenes i sortides en l'ordre en què van passar com a paràmetres. Cada cicle de temps s'anomena, la següent cadena que va passar com un paràmetre és el resultat.

Codi

{% for item in items %}

<div class={% cycle 'red', 'green', 'blue' %}> {{ item }} </div>

{% end %}

Sortida

<div class=red> Item one </div>

<div class=green> Item two </div>

<div class=blue> Item three </div>

<div class=red> Item four </div>

<div class=green> Item five</div>

fila de la taula

Genera una taula HTML. Ha d'estar envoltada en etiquetes HTML d'una <taula> d'obertura i una </taula> de tancament.

Al codi de l'etiqueta tablerow, està disponible tablerowloop.

Codi

<table>

{% tablerow child_page in page.children %}

{{ child_page.title }}

{% endtablerow %}

</table>

Sortida

<table>

<tr class=row1>

<td class=col1>

Child Page 1

</td>

<td class=col2>

Child Page 2

</td>

<td class=col3>

Child Page 3

</td>

<td class=col4>

Child Page 4

</td>

</tr>

</table>

Paràmetres

Aquests paràmetres de tablerow es poden utilitzar sols o junts.

Sortida

<table>

<tr class=row1>

<td class=col1>

Child Page 1

</td>

<td class=col2>

Child Page 2

</td>

</tr>

<tr class=row2>

<td class=col3>

Child Page 3

</td>

<td class=col4>

Child Page 4

</td>

</tr>

</table>

Codi

<table>

{% tablerow child_page in page.children cols:2 %}

{{ child_page.title }}

{% endtablerow %}

</table>

Dicta quantes files ha de tenir la taula generada.

cols

limit

Tanca el bucle després d'un determinat nombre d'elements.

Codi

<table>

{% tablerow child_page in page.children limit:2 %}

{{ child_page.title }}

{% endtablerow %}

</table>

Sortida

<table>

<tr class=row1>

<td class=col1>

Child Page 1

</td>

<td class=col2>

Child Page 2

</td>

</tr>

</table>

offset

Comença el bucle en un índex determinat.

Codi

<table>

{% tablerow child_page in page.children offset:2 %}

{{ child_page.title }}

{% endtablerow %}

</table>

Sortida

<table>

<tr class=row1>

<td class=col1>

Child Page 3

</td>

<td class=col2>

Child Page 4

</td>

</tr>

</table>

range

Defineix un interval de números per iterar.

Codi

<table>

{% tablerow i in (1..3) %}

{{ i }}

{% endtablerow %}

</table>

Consulteu també