Задать вопрос
rogerCopy
@rogerCopy

Как в Django 2.2 заставить условие «if» внутри «for» работать?

приветствую, вот такое есть:

<tbody>
    {% for i in all %}
       <tr>
            <td class="grey"> {{ i.0 }} </td>
            <td class="grey">{{ i.1 }}</td>
            <td class="thick">{{ i.2 }}</td>
            <td>{{ i.3 }}</td>
            <b><td style="color: {% if i.4|floatformat > 0 %} green {% else %} red {% endif %} ;"> {{ i.4 }} </td> - не работает              
            <td style="color:{% if i.4|floatformat > 0 %} green {% else %} red {% endif %};"> {{ i.5 }} </td> </b> - не работает
        </tr>
    {% endfor %}
</tbody>


пример значения i.4 - "-0.34" или "+0.34"
т.е. если в i.4 есть + должно быть зеленое, а "-" - красное

щас все и.4 - красные

как быть?
  • Вопрос задан
  • 296 просмотров
Подписаться 1 Простой 3 комментария
Решения вопроса 1
alternativshik
@alternativshik
так может там строка, а не число лежит, вот и "не работает"?
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@deliro
Фильтр выброси |floatformat. Он отдаёт строковое представление числа
Ответ написан
Guest007
@Guest007
Django, Python, Linux и всё такое...
больше 0 значит могут быть значения и меньше? Если только 0 или больше, то можно вообще {% if i.4 %} написать.
Если и отрицательные могут быть, то убедись, что там не будет строк и {% if i.4 > 0 %}
Как-то так...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы