如何覆盖 Flask-Security 中注册表单的字段?

问题描述 投票:0回答:1

如何覆盖 Flask-Security 中的默认注册表单是删除所有标签属性。 文档中有一个自定义视图的部分,但在示例中是将字段添加到表单中,我需要更改默认值。

python flask flask-security
1个回答
1
投票

您可以通过在项目根目录中的 templates/security/_macros.html 添加一个模板来完成此操作,如下所示:

{% macro render_field_with_errors(field) %}
  <p>
    {{ field.label }} {{ field(**kwargs)|safe }}
    {% if field.errors %}
      <ul>
      {% for error in field.errors %}
        <li>{{ error }}</li>
      {% endfor %}
      </ul>
    {% endif %}
  </p>
{% endmacro %}

可以在此处找到示例:https://github.com/mattupstate/flask-security/blob/c7d0ea9cceb5d2fab7b98a21579da86aa2a3c20b/flask_security/templates/security/_macros.html

要删除标签,请删除标签扩展:

{% macro render_field_with_errors(field) %}
  <p>
    {{ field(**kwargs)|safe }}
    {% if field.errors %}
      <ul>
      {% for error in field.errors %}
        <li>{{ error }}</li>
      {% endfor %}
      </ul>
    {% endif %}
  </p>
{% endmacro %}

感谢 René Jahn 帮助回答这个问题

© www.soinside.com 2019 - 2024. All rights reserved.