- 用上下文处理器app_context_processor定义函数
- 获取session中保存的值
- 返回字典
- 在父模板中更新导航,插入登录状态判断代码。
- 注意用{% ... %}表示指令。
- {{ }}表示变量
- 完成注销功能。
- 清除session
- 跳转
-
@app.context_processor def mycontext(): usern = session.get('user') if usern: return {'username' : usern} else: return {} @app.route('/base/') def base(): return render_template('base.html') @app.route('/register/',methods=['GET','POST']) def register(): if request.method == 'GET': return render_template('register.html') else: username = request.form.get('username') password = request.form.get('password') nickname = request.form.get('nickname') user = User.query.filter( User.username == username).first() if user: return'username existed' else: user = User(username=username,password=password,nickname=nickname) db.session.add(user) db.session.commit() return redirect(url_for('login')) @app.route('/fankui/') def fankui(): return render_template('fankui.html') @app.route('/logout/') def logout(): session.clear() return redirect(url_for('danghangye'))
-
{% if username %} <a href="#">{{username}}</a> <a href="{{url_for('logout')}}">注销</a> {% else %} <a href="{{url_for('login')}}">login</a> <a href="{{url_for('register')}}">register</a> {% endif %}
转载于:https://www.cnblogs.com/Qzlhxxx/p/7892145.html