【问题标题】:Django - better way of multiple if's in templateDjango - 模板中多个 if 的更好方法
【发布时间】:2014-05-15 21:53:04
【问题描述】:

我在模板和变量中有s1s2s3

<input type="text" value="{% if s1 %}{{s1}}{% endif %}{% if s2 %}{{s2}}{% endif %}{% if s3 %}{{s3}}{% endif %}" />

有没有更好的方法

{% if s1 %}{{s1}}{% endif %}{% if s2 %}{{s2}}{% endif %}{% if s3 %}{{s3}}{% endif %}

【问题讨论】:

    标签: django if-statement django-templates refactoring django-template-filters


    【解决方案1】:

    您可以使用 elif 标签。

    {% if s1 %}{{s1}}{% elif s2 %}{{s2}}{% elif s3 %}{{s3}}{% endif %}
    

    【讨论】:

      【解决方案2】:

      使用default 过滤器:

      如果 value 的计算结果为 False,则使用给定的默认值。否则,使用该值。

      {{ s1|default:"" }}
      

      【讨论】:

      • 所以我可以说:{{s1|default:""}}{{s2|default:""}}{{s3|default:""}},对吧?
      猜你喜欢
      • 2012-08-17
      • 1970-01-01
      • 2016-07-11
      • 2010-12-27
      • 2020-07-23
      • 1970-01-01
      • 2017-07-15
      • 2018-03-13
      • 2018-07-07
      相关资源
      最近更新 更多