所以我拥有的是一个非常基本的Flask应用程序,它具有一些用户帐户登录设置。我想做的是发布到'/ login'之后,我想重定向回主页,如果我的会话cookie显示我已登录,它将显示另一个页面。但是,每次我重定向回'/ home'时,它都会带我回到登录模板。任何想法如何解决这个问题?我应该提到这不是使用Flask-Login,而是使用PyMongo数据库作为用户数据库进行设置。
@route.app('/home')
if 'username' in session:
render_template('home.html')
else:
render_template('login.html')
@route.app('/login', methods=['POST'])
users = mongo.db.users
login = users.find_one({'name' : request.form['username']})
if login:
if bcrypt.checkpw(request.form['password'], login['password']):
session['username'] = request.form['username']
redirect(url_for('home'))
else:
return "<h1>booo</h1>"
答案 0 :(得分:0)
作为更新,我不太确定为什么if 'username' in session:
没用,特别是因为它已在同一文件中其他位置的另一条路由中使用,但将其切换到if not session.get('username') is None:
最终可以工作。