【发布时间】:2020-08-09 12:37:40
【问题描述】:
您好,希望这是一个简单的解决方法。我对 Django/Wagtail 还是很陌生,如果有任何帮助,我将不胜感激。我的目标是通过使用 field.label_tag 值过滤来更好地格式化我的表单字段。
我知道 field.label_tag 的值符合预期,但在确认模板中的输出并尝试 if 语句的一些变体后仍然没有运气。
{% for field in form.visible_fields %}
<div class="control-group">
<div class="form-group floating-label-form-group controls">
<label>{{ field.label_tag }}</label>
{% if field.label_tag|stringformat:"s" == "Email Address" %}
<strong>field.label_tag</strong>
{% endif %}
{% if field.label_tag|stringformat:"s" == "Message" %}
{% render_field field class+="form-control" placeholder+="Message" id+="message" %}
{% endif %}
<p class="help-block text-danger"></p>
</div>
</div>
{% endfor %}
【问题讨论】:
-
你可能想做
if field.label|stringformat:"s" == "Email Address" -
field.label_tag将整个标签 html 渲染出来<label for="id_email">Email address:</label>,看看这个:docs.djangoproject.com/en/3.0/topics/forms/… -
@MohitC - 非常感谢,field.label 是这里的解决方案。
-
@minglyu - 感谢您的解释和链接。以前我试图为这个概念找到一些参考资料,但没有运气。
-
@zephyr19,你把它作为答案发布了。
标签: html django if-statement templates wagtail