【发布时间】:2026-01-26 23:25:01
【问题描述】:
我正在使用 Bootstrap 3 和 WTF 表单在 Flask 中开发应用程序。在个人资料页面,用户可以更改自己的姓名、密码等。
但是当我登录并要求 Firefox 记住我的密码时,新密码字段已在个人资料页面上填写。简单地将value=' ' 添加到我的表单字段不会清除表单的密码字段。
我该如何清除它?
【问题讨论】:
标签: twitter-bootstrap flask passwords
我正在使用 Bootstrap 3 和 WTF 表单在 Flask 中开发应用程序。在个人资料页面,用户可以更改自己的姓名、密码等。
但是当我登录并要求 Firefox 记住我的密码时,新密码字段已在个人资料页面上填写。简单地将value=' ' 添加到我的表单字段不会清除表单的密码字段。
我该如何清除它?
【问题讨论】:
标签: twitter-bootstrap flask passwords
只需将autocomplete="off" 添加到您的密码字段的渲染调用中:
{{ form.password(autocomplete="off") }}
或者,如果您使用仅循环遍历表单中每个字段的宏来呈现表单,则可以使用自定义小部件:
from wtforms.widgets import Input
class PasswordWidget(Input):
def __call__(self, *args, **kwargs):
if "autocomplete" not in kwargs:
kwargs["autocomplete"] = "off"
return super(InputWidget, self).__call__(*args, **kwargs)
然后以该特定形式您可以显式设置小部件:
class UpdateForm(SomeBaseForm):
password = StringField("Password", widget=PasswordWidget())
【讨论】: