Я очень хорошо разбираюсь в веб-разработке на Python, поэтому, пожалуйста, потерпите меня.
Я пытаюсь настроить очень простой вход в систему, используя Flask и приведенный ниже код:
@app.route('/')
def index():
if verifyLoggedIn():
someData = gatherSomeData()
return render_template('main.html', data=someData)
else:
return redirect(url_for('login'))
@app.route('/login/', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
if request.form['usr'] == user and request.form['pwd'] == password:
session['user'] = request.form['usr']
session['passwd'] = request.form['pwd']
return redirect(url_for('index'))
else:
return render_template('out.html',name=request.form['usr'])
else:
return render_template('login.html')
Когда я захожу на страницу, перейдя на «localhost: 5000/», я правильно перенаправляюсь на «localhost: 5000/login/». Однако после входа в систему страница загружает «main.html», но на панели URL по-прежнему отображается «localhost: 5000/login/». Проблема в том, что если я нажму кнопку обновления, чтобы получить новое значение «someData», я вернусь на экран входа в систему. Я считаю, что это имеет место после любого почтового действия. Я упускаю здесь что-то очень фундаментальное?