我正在使用Flask开发登录界面。用户登录后,页面应重定向到仪表板。相反,我收到了消息You are now logged in
和Unauthorized user
。该代码不会重定向到仪表板。
我有以下代码-
def is_logged_in(f): #Check if user logged in
@wraps(f)
def wrap(*args, **kwargs):
if 'logged_in' in session:
return f(*args, **kwargs)
else:
flash('Unauthorized user', 'danger')
return redirect(url_for('login'))
return wrap
#Dashboard
@app.route('/dashboard')
@is_logged_in
def dashboard():
return render_template('dashboard.html')
请帮助我理解为什么装饰器的行为不正常。
答案 0 :(得分:0)
由于未记录username
,我没有初始化会话详细信息。我在login
函数中添加了以下几行,错误已解决-
session['logged_in'] = True
session['username'] = username