bugl
bugl
HomeLearnPatternsSearch
HomeLearnPatternsSearch

Loading lesson path

Learn/Django/Django Syntax
Django•Django Syntax

Django for Tag

Concept visual

Django for Tag

keys map to buckets01kiwi:12pear:43apple:7grape:9

For Loops

A for loop is used for iterating over a sequence, like looping over items in an array, a list, or a dictionary.

Example

Loop through the items of a list:

{% for x in fruits %}

<h1></h1>

{% endfor %}

Example

Loop through a list of dictionaries:

{% for x in cars %}

<h1></h1> <p></p> <p></p>

{% endfor %}

Data From a Model

Data in a model is like a table with rows and columns.

The

Member model we created earlier has five rows, and each row has three columns: id firstname lastname phone joined_date

Emil

Refsnes

5551234

Formula

2022 - 01 - 05

Tobias

Refsnes

5557777

Formula

2022 - 04 - 01

Linus

Refsnes

5554321

Formula

2021 - 12 - 24

Lene

Refsnes

5551234

Formula

2021 - 05 - 01

Stalikken

Refsnes

5559876

Formula

2022 - 09 - 29
When we fetch data from the model, it comes as a QuerySet object, with a similar format as the cars example above: a list with dictionaries:

<QuerySet [

{
'id': 1,
'firstname': 'Emil',
'lastname': 'Refsnes',
'phone': 5551234,
'joined_date': datetime.date(2022, 1, 5)
},
{
'id': 2,
'firstname': 'Tobias',
'lastname': 'Refsnes'
'phone': 5557777,
'joined_date': datetime.date(2021, 4, 1)
},
{
'id': 3,
'firstname': 'Linus',
'lastname': 'Refsnes'
'phone': 5554321,
'joined_date': datetime.date(2021, 12, 24)
},
{
'id': 4,
'firstname': 'Lene',
'lastname': 'Refsnes'
'phone': 5551234,
'joined_date': datetime.date(2021, 5, 1)
},
{
'id': 5,
'firstname': 'Stalikken',
'lastname': 'Refsnes'
'phone': 5559876,
'joined_date': datetime.date(2022, 9, 29)
}

]>

Example

Loop through items fetched from a database:

{% for x in members %}

<h1></h1> <p>

</p>

{% endfor %}

Reversed

The reversed keyword is used when you want to do the loop in reversed order.

Example

{% for x in members reversed %}

<h1></h1> <p>

</p>

{% endfor %}

Empty

The empty keyword can be used if you want to do something special if the object is empty.

Example

<ul>

{% for x in emptytestobject %}

<li></li>

{% empty %}

Formula

< li > No members </li >
{% endfor %}

</ul> The empty keyword can also be used if the object does not exist:

Example

<ul>

{% for x in myobject %}

<li></li>

{% empty %}

Formula

< li > No members </li >
{% endfor %}

</ul>

Loop Variables

Django has some variables that are available for you inside a loop: forloop.counter forloop.counter0 forloop.first forloop.last forloop.parentloop forloop.revcounter forloop.revcounter0 forloop.counter The current iteration, starting at 1.

Example

<ul>

{% for x in fruits %}

<li></li>

{% endfor %}

</ul> forloop.counter0 The current iteration, starting at 0.

Example

<ul>

{% for x in fruits %}

<li></li>

{% endfor %}

</ul> forloop.first Allows you to test if the loop is on its first iteration.

Previous

Django if Tag

Next

Django comment Tag