Flask Secuirty禁用密码确认

时间:2017-08-15 00:06:57

标签: python flask flask-security

您好我正在使用python flask Flask-Security

我想让用户确认他们的电子邮件,但不是他们的密码。

它不会要求用户输入他们的密码和其他输入来确认密码是否匹配。

相反,它只是要求用户输入一个密码。

SECURITY_CONFIRMABLE要求用户在注册新帐户时需要确认其电子邮件地址。

我希望用户确认他们的电子邮件,但不要检查密码是否与注册匹配。

2 个答案:

答案 0 :(得分:1)

来自RegisterForm的{​​{1}}继承自Flask-SecurityConfirmRegisterFormPasswordConfirmFormMixin。您应该从NextFormMixin导入ConfirmRegisterFormNextFormMixin,并定义仅从Flask-SecurityRegisterForm继承的自定义ConfirmRegisterForm

NextFormMixin

重写from flask-security import ConfirmRegisterForm, NextFormMixin class CustomRegisterForm(ConfirmRegisterForm, NextFormMixin): def __init__(self, *args, **kwargs): super(CustomRegisterForm, self).__init__(*args, **kwargs) if not self.next.data: self.next.data = request.args.get('next', '')

的配置
Flask-Security

答案 1 :(得分:0)

如果您使用SECURITY_CONFIRMABLE = True并想在注册时使用密码确认,只需将其添加到配置文件或应用程序配置中即可:

from flask_security import RegisterForm
SECURITY_CONFIRM_REGISTER_FORM = RegisterForm
# or use this: app["SECURITY_CONFIRM_REGISTER_FORM"] = RegisterForm

这与Flask-Security==3.0.0

一起使用