Я пытаюсь создать страницу входа и регистрации с помощью модуля Flask-Login.Приложение может добавить сведения о пользователе в базу данных (sqlite) и хэшировать пароль, но не может правильно войти в систему пользователя.
Ошибка применения: «TypeError: требуется объект, поддерживающий API-интерфейс буфера»
Указанная ошибка, похоже, связана с методом "check_password_hash" в моем коде.
Пожалуйста, найдите часть моего кода:
a) Регистрация
@app.route('/register', methods=['POST', 'GET'])
def register():
form = RegisterForm()
if form.validate_on_submit():
hashed_password = generate_password_hash(form.password.data, method='sha256')
new_user = User(username=form.username.data, password=hashed_password, email=form.email.data)
db.create_all()
db.session.add(new_user)
db.session.commit()
return render_template('register_ok.html', form=form)
return render_template('register.html', form=form)
б) Логин (который не работает)
@app.route('/login', methods=['POST', 'GET'])
def login():
form = LoginForm()
if form.validate_on_submit():
user = User.query.filter_by(username=form.username.data).first()
if user:
if check_password_hash(user.password, form.password):
login_user(user, remember=form.remember.data)
return redirect(url_for('dashboard'))
return render_template('err_login.html')
return render_template('login.html', form=form)
Не могли бы вы посоветовать возможное исправление?
Заранее спасибо!