Zdieľať cez


Značky iterácie

Iterácia značky sa používajú na opakované spustenie/vykreslenie bloku kódov.

for

Opakovane spúšťa blok kódu. Najčastejšie sa používa na iteráciu položiek v poli alebo slovníku.

V rámci bloku značiek pre je dostupný objekt forloop.

kód

{% for child_page in page.children %}

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

{% endfor %}

Výstup

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

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

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

Parametre

Tieto parametre príznaku pre môžu byť použité samostatne alebo v kombinácii.

limit

Ukončí slučku po danom počte položiek.

kód

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

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

{% endfor %}

Výstup

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

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

offset

Začne slučku s daným indexom.

kód

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

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

{% endfor %}

Výstup

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

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

rozsah

Definuje rozsah počtu slučiek, ktorými prejde.

kód

{% assign n = 4 %}

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

{{ i }}

{% endfor %}

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

{{ i }}

{% endfor }}

Výstup

2 3 4

10 11 12 14

obrátené

Opakuje cez slučku v obrátenom poradí, počnúc na poslednú položku.

kód

{% for child_page in page.children reversed %}

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

{% endfor %}

Výstup

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

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

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

cyklus

Prebieha slučkou cez skupinu reťazcov a výstupov, aby prešli poradím, ako boli pridávané v podobe parametrov. Pri každom spustení cyklu vyjde ako výstup ďalší reťazec, ktorý bol zadaný ako parameter.

kód

{% for item in items %}

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

{% end %}

Výstup

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

podriadená položka

Vytvára tabuľky v HTML. Musí byť zabalené v otváracej <tabuľke> a zatváracej značke HTML </tabuľky>.

V rámci bloku označenia tablerow je dostupné tablerowloop.

kód

<table>

{% tablerow child_page in page.children %}

{{ child_page.title }}

{% endtablerow %}

</table>

Výstup

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

Parametre

Tieto parametre tablerowcan môžu byť použité samostatne alebo v kombinácii.

Výstup

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

kód

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Určuje, koľko riadkov má mať vytvorená tabuľka.

stĺpce

limit

Ukončí slučku po danom počte položiek.

kód

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Výstup

<table>

<tr class=row1>

<td class=col1>

Child Page 1

</td>

<td class=col2>

Child Page 2

</td>

</tr>

</table>

offset

Začne slučku s daným indexom.

kód

<table>

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

{{ child_page.title }}

{% endtablerow %}

</table>

Výstup

<table>

<tr class=row1>

<td class=col1>

Child Page 3

</td>

<td class=col2>

Child Page 4

</td>

</tr>

</table>

rozsah

Definuje rozsah počtu slučiek, ktorými prejde.

kód

<table>

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

{{ i }}

{% endtablerow %}

</table>