我有一个非常简单的联系表格,我想以某种方式隐藏标签,使其不显示Csrf Token
。我正在使用Flask和Flask-WTForms并呈现如下形式:
{% for field in form %}
{{ field.label }}
{{ field }}
{% endfor %}
因此,基本上这可以正确显示我的输入,并且隐藏了csrf oen,但未隐藏标签?我应该克服它并隐式地说,form.field_name
而不是遍历表格,还是有办法处理这种“拐角案例”。
我正在考虑在for循环声明或标签声明中进行逻辑检查,但到目前为止,我在有效的文档中还没有找到任何东西。
谢谢
编辑:我已经通过这样做“解决”了问题,但是感觉有点肮脏和hacky,我不喜欢我仍然愿意寻求更好的解决方案:
{% if not loop.first %}
{{ field.label }}
{% endif %}
如果您想要一种适用于所有隐藏字段而不只是CSRF令牌的通用解决方案:
{{ form.hidden_tag() }}
{% for field in form if field.widget.input_type != 'hidden' %}
{{ field.label }}
{{ field }}
{% endfor %}
form.hidden_tag()
由Flask-WTF提供。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句