Django способ сделать условное форматирование

В Chrome есть опция «Настройки консоли» («Инструменты разработчика» -> «Консоль» -> «Настройки» [верхний правый угол]) с именем «Показать метки времени», и это именно то, что мне нужно.

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

Обновление для Chrome 68+

Параметр «Показать метки времени» был перемещен на панель «Настройки» раздела «Настройки DevTools», расположенного в верхнем правом углу панели DevTools:

enter image description here

8
задан Andre Miller 1 July 2009 в 11:21
поделиться

3 ответа

Я большой поклонник размещения ВСЕЙ «бизнес-логики» в функции просмотра и ВСЕХ презентаций в шаблонах / CSS.

Вариант 1 идеален. Вы возвращаете список пар: (дата, состояние), где состояние - это имя класса («прошлое», «настоящее», «будущее»).

Затем ваш шаблон использует информацию о состоянии в качестве класса для . Затем ваш CSS предоставляет цветовую кодировку для этого диапазона.

Теперь вы можете изменять правила, не нарушая шаблон. Вы можете изменить CSS, не касаясь кода HTML или Python.

{% for date,state in the_date_list %}
    <span class="{{state}}">date</span>
{% endfor %}
8
ответ дан 5 December 2019 в 12:12
поделиться

У меня было очень похожее требование; так как это в значительной степени связано с бизнес-логикой, я добавил модельный метод для управления этим видом информации, который будет использоваться затем в шаблоне:

{% if not bug.within_due_date %}bgcolor="OrangeRed"{% endif %}

Его также можно получить с помощью тега шаблона или фильтра; но в моем случае я чувствовал, что лучшее место для логики находится внутри модели; Я предлагаю вам проанализировать это таким же образом.

4
ответ дан 5 December 2019 в 12:12
поделиться

Поскольку вы выполняете статическое сравнение (запросы не требуются), вам следует выбрать наиболее СУХИЙ и простой в реализации вариант. В этом случае я бы выбрал вариант 4, сделал шаблонный фильтр. Затем вы можете сделать value | filter, чтобы получить класс, который вам понадобится для установки цвета фона. Фильтры шаблонов на самом деле реализовать немного проще, чем теги шаблонов.

2
ответ дан 5 December 2019 в 12:12
поделиться
Другие вопросы по тегам:

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