Как увеличить переменную в шаблоне Django - PullRequest
0 голосов
/ 14 января 2019

вот мой файл views.py, в котором у меня есть функция delcared

подзаголовок

, которые загружают объекты аккаунта для просмотра

def subhead(request):
    subheads=Account.objects.all()

    return render(request,'my/test.html',{'accounts':subheads})

вот мой шаблон

{% for subhead in subheads %}
         {% with i=0  %}
           {% if subhead.parent == None and subhead.type == 'As' %}
              {% if i == 0 %}

                  <tr>
                    <td>Assets</td>
                      <td>{{ subhead.name }}</td>
                  </tr>
               {% else %}
                 <tr>
                   <td></td>
                   <td>{{ subhead.name }}</td>
                 </tr>

               {% endif %}
             {% endif %}
          {% set i=i+1  %}
        {% endwith %}
{% endfor %}

Теперь я просто хочу увеличить значение переменной. Но я не знаю, как мне решить эту задачу. Я удалил переменную i = 0 и также попытался установить ее значения. Но она возвращает ошибку

Недопустимый тег блока в строке 419: «установлен», ожидается «конец с». Ты забыли зарегистрироваться или загрузить этот тег?

И forloop.counter не подходит для случая. Потому что я хотел учесть условие if и хотел на этот раз показать статическое значение td. Поэтому, пожалуйста, не предлагайте это

1 Ответ

0 голосов
/ 14 января 2019

Внутри цикла for Django уже содержит некоторые специальные переменные шаблона . Для вашего примера вы можете проверить {% if forloop.counter == 1 %} или {% if forloop.first %}.

...