383 Stimmen

Django - Iterieren Nummer in for-Schleife einer Vorlage

Ich habe die folgende for-Schleife in meiner Django-Vorlage, die Tage anzeigt. Ich frage mich, ob es möglich ist, eine Zahl (im folgenden Fall i) in einer Schleife zu iterieren. Oder muss ich sie in der Datenbank speichern und sie dann in Form von days.day_number abfragen?

{% for days in days_list %}
    <h2># Day {{ i }} - From {{ days.from_location }} to {{ days.to_location }}</h2>
{% endfor %}

889voto

Rohan Punkte 49938

Django bietet sie. Sie können entweder verwenden:

  • {{ forloop.counter }} Der Index beginnt bei 1 .
  • {{ forloop.counter0 }} Der Index beginnt bei 0 .

In der Vorlage können Sie das tun:

{% for item in item_list %}
    {{ forloop.counter }} # starting index 1
    {{ forloop.counter0 }} # starting index 0

    # do your stuff
{% endfor %}

Weitere Informationen unter: für | Eingebaute Vorlagen-Tags und Filter | Django-Dokumentation

160voto

JMJ Punkte 1825

Auch das kann man verwenden:

{% if forloop.first %}

o

{% if forloop.last %}

16voto

Ahmed Elgammudi Punkte 524
{% for days in days_list %}
    <h2># Day {{ forloop.counter }} - From {{ days.from_location }} to {{ days.to_location }}</h2>
{% endfor %}

oder wenn Sie bei 0 anfangen wollen

{% for days in days_list %}
        <h2># Day {{ forloop.counter0 }} - From {{ days.from_location }} to {{ days.to_location }}</h2>
{% endfor %}

9voto

perymerdeka Punkte 471

Aus den Unterlagen https://docs.djangoproject.com/en/stable/ref/templates/builtins/#for Sie können einen Zähler wie diesen verwenden, um Artikel zu zählen

{% for job in jobs %}
<td>{{ forloop.counter }}</td>
<td>{{ job.title }}</td>
<td>{{ job.job_url }}</td>
{% endfor %}
  • {{ forloop.counter }} Beginn der Zählung von 1
  • {{ forloop.counter0 }} Beginn der Zählung von 0

3voto

Travis Punkte 103

Machen Sie es so,

{% for days in days_list %}
    <h2># Day {{ forloop.counter }} - From {{ days.from_location }} to {{ days.to_location }}</h2>
{% endfor %}

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X