Partajați prin


Etichete de iterare

Etichetele de iterare sunt folosite pentru a rula/reda un bloc de cod în mod repetat.

pentru

Execută un bloc de cod în mod repetat. Sunt utilizate cel mai frecvent pentru a itera peste elementele dintr-o matrice sau dintr-un dicționar.

În cadrul blocului de etichete for este disponibil obiectul forloop.

Cod

{% for child_page in page.children %}

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

{% endfor %}

Ieșire

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

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

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

Parametri

Acești parametri de for pot fi utilizați individual sau în combinație.

limită

Iese din buclă după un anumit număr de elemente.

Cod

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

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

{% endfor %}

Ieșire

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

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

decalat

Începe bucla de la indexul dat.

Cod

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

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

{% endfor %}

Ieșire

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

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

interval

Definește o serie de numere pentru buclă.

Cod

{% assign n = 4 %}

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

{{ i }}

{% endfor %}

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

{{ i }}

{% endfor }}

Ieșire

2 3 4

10 11 12 14

inversat

Iterează prin buclă în ordine inversă, începând de la ultimul element.

Cod

{% for child_page in page.children reversed %}

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

{% endfor %}

Ieșire

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

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

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

ciclu

Creează o blucă printr-un grup de șiruri și le scoate în ordinea în care au fost trecute ca parametri. De fiecare dată când se utilizează ciclul, șirul următor care s-a transmis ca parametru este afișat.

Cod

{% for item in items %}

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

{% end %}

Ieșire

<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>

tablerow

Generează un tabel HTML. Trebuie să fie încadrat în etichete HTML de deschidere <table> și de închidere </table>.

În cadrul blocului de etichete tablerow, este disponibilă eticheta tablerowloop.

Cod

<table>

{% tablerow child_page in page.children %}

{{ child_page.title }}

{% endtablerow %}

</table>

Ieșire

<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>

Parametri

Acești parametri de tablerowcan pot fi utilizați individual sau în combinație.

Ieșire

<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>

Cod

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Dictează câte rânduri ar trebui să aibă tabelul generat.

coloane

limită

Iese din buclă după un anumit număr de elemente.

Cod

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Ieșire

<table>

<tr class=row1>

<td class=col1>

Child Page 1

</td>

<td class=col2>

Child Page 2

</td>

</tr>

</table>

offset

Începe bucla de la indexul dat.

Cod

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Ieșire

<table>

<tr class=row1>

<td class=col1>

Child Page 3

</td>

<td class=col2>

Child Page 4

</td>

</tr>

</table>

interval

Definește o serie de numere pentru buclă.

Cod

<table>

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

{{ i }}

{% endtablerow %}

</table>

Consultați și