Как добавить строку в шаблон Django? - PullRequest
1 голос
/ 13 марта 2019

Я хочу взять этот кусок кода ...

<section data-name="color1" data-type="color" data-order="2" style="color:{{ block.color1|default:"inherit" }}">

Который по умолчанию выводит этот тег в html ...

<section data-name="color1" data-type="color" data-order="2" style="color: rgb(0, 0, 0);">

Из-за цветового конфликта на одном из моих дочерних элементов цвет переменной block.color1 не применяется. Я хотел бы добавить «! Важное» к выводу встроенного CSS, чтобы противостоять этой проблеме. Другими словами, я хочу вывод

<section data-name="color1" data-type="color" data-order="2" style="color: rgb(0, 0, 0) !important;">

в HTML. Что я могу добавить в Django, чтобы убедиться, что я получаю вывод с параметром! Важное в CSS?

Ответы [ 2 ]

0 голосов
/ 13 марта 2019

Вы должны просто добавить класс в раздел:

<section data-name="color1" data-type="color" data-order="2" class="{{ foo }}">

Тогда в вашем css:

.foo {
   color:someColor !important;
}
0 голосов
/ 13 марта 2019

Вы можете добавить другой фильтр, предполагая, что первый возвращает строку:

from django import template
from django.template.defaultfilters import stringfilter

register = template.Library()

@register.filter
@stringfilter
def mark_important(value):
    return value.replace(';', '!important;')

в шаблоне:

<section data-name="color1" data-type="color" data-order="2" style="color:{{ block.color1|default:"inherit"|mark_important }}">
...