如何比较烧瓶中的两个密码

How to compare two passwords in flask

如何比较 Flask 中的两个密码?我需要在哪里做:在 class 或 request.method == "POST" 中?谢谢!

class ContactForm(FlaskForm):
    email = StringField(label='E-mail', validators=[
        validators.Length(min=5, max=35), validators.Email()
    ])
    password = StringField(label='Password', validators=[
        validators.Length(min=6, max=10)
    ])
    password_confirm = StringField(label='Password confirm', validators=[
        validators.Length(min=6, max=10)
    ])

    def validate_name(form, field):
        if len(field.password.data) != len(field.password_confirm.data):
            raise ValidationError('Passwords must be equal')

来自示例here, you can use validators.EqualTo()

class ContactForm(FlaskForm):
    email = StringField(label='E-mail', validators=[
        validators.Length(min=5, max=35), validators.Email()
    ])
    password = StringField(label='Password', validators=[
        validators.Length(min=6, max=10),
        validators.EqualTo('password_confirm', message='Passwords must match')
    ])
    password_confirm = StringField(label='Password confirm', validators=[
        validators.Length(min=6, max=10)
    ])

请注意,您可能还应该使用 PasswordField 而不是 StringField