8-2节会员登录的时候总是密码错误

来源:9-2 .会员登录

鼠尾草17

2017-08-13

http://szimg.mukewang.com/599058010001468f05090408.jpg

http://szimg.mukewang.com/599058010001056909020569.jpg

http://szimg.mukewang.com/599058010001827a08820500.jpg


写回答

2回答

rustgopy

2017-08-13

核对密码可以在定义表单的时候定义,代码如下:

class LoginForm(FlaskForm):
    """管理员登录表单"""
    account = StringField(
        label="账号",
        validators=[
            DataRequired("请输入账号!")
        ],
        description="账号",
        render_kw={
            "class": "form-control",
            "placeholder": "请输入账号!",
            # "required": "required"
        }
    )
    pwd = PasswordField(
        label="密码",
        validators=[
            DataRequired("请输入密码!")
        ],
        description="密码",
        render_kw={
            "class": "form-control",
            "placeholder": "请输入密码!",
            # "required": "required"
        }
    )
    submit = SubmitField(
        '登录',
        render_kw={
            "class": "btn btn-primary btn-block btn-flat",
        }
    )

    def validate_account(self, field):
        account = field.data
        admin = Admin.query.filter_by(name=account).count()
        if admin == 0:
            raise ValidationError("账号不存在!")

    def validate_pwd(self, field):
        from app.models import Admin
        pwd = field.data
        name = self.account.data
        admin = Admin.query.filter_by(name=name).first()
        if not admin.check_pwd(pwd):
            raise ValidationError("密码错误!")


0
4
鼠尾草17
回复
rustgopy
刚找出错误了,是注册的代码出了问题
2017-08-14
共4条回复

鼠尾草17

提问者

2017-08-13

将帐号密码打印出来,加密后的密码和数据库里也是一致的,问题就出在核对密码的地方,但是不知道怎么解决

//szimg.mukewang.com/599059fd0001d72609640615.jpg

//szimg.mukewang.com/599059fd00010ebe12680602.jpg


0
1
rustgopy
同学,你好,你打印一下看form传过来没有
2017-08-14
共1条回复

Python Flask 构建微电影视频网站

Python 最好用轻量级框架,让你轻松胜任 Python Web 工程师

683 学习 · 663 问题

查看课程