代码之家  ›  专栏  ›  技术社区  ›  Matiny

如何向Django模板添加字符串?

  •  0
  • Matiny  · 技术社区  · 6 年前

    <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);">
    

    因为我的一个子元素上的颜色冲突块颜色1未应用变量。我想加一个“!important”来解决这个问题。换句话说,我想要一个

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

    0 回复  |  直到 6 年前
        1
  •  0
  •   p14z    6 年前

    您可以添加另一个过滤器,假设第一个过滤器返回一个字符串:

    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 }}">
    
        2
  •  0
  •   Lord Elrond Mureinik    6 年前

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

    然后在css中:

    .foo {
       color:someColor !important;
    }