Я пытаюсь понять, почему после входа в систему, как только я перенаправляюсь на другую страницу, отличную от логина, я выхожу из системы. Я не думаю, что ошибка находится в окне входа в систему, я уверен, что это связано с чем-то более тонким. Следующий код в любом случае связан с управлением входами.Я вхожу в систему, и я немедленно вышел из системы. Зачем?
@app.route("/login", methods=["GET", "POST"])
def login():
form = LoginForm()
if form.validate_on_submit():
user = load_user(form.username.data)
if user is not None and user.verify_password(form.password.data):
if form.remember_me.data == True:
login_user(user, remember=True)
else:
login_user(user)
flash('Logged in successfully.')
next = request.args.get('next')
return redirect(next or url_for('home'))
else:
flash('Wrong username and/or password')
form.username.data = request.args.get('username')
return render_template('login.html', form=form, title='Login')
@lm.user_loader
def load_user(username):
user = User.query.filter_by(username=username)
if user.count()!=0 :
return user.first()
else:
return None
@app.route("/logout")
@login_required
def logout():
logout_user()
flash('Logged out!')
return to_index()
Я не знаю, какая другая часть кода может быть полезно размещать, так как я довольно путать о происхождении самой проблемы.
Вы должны быть осторожны с отступом. ваш def logout(), похоже, что он будет выполняться в любое время u load_user() – Busturdust
ваш код выглядит правильно, убедитесь, что ваш отступ верен, как указано @Busturdust – Pradheep
да, вы правы. Во всяком случае, я сделал эту ошибку при публикации кода, так что это не (к сожалению) причина моей проблемы. – Paolo91