登录之后更新导航
- 用上下文处理器app_context_processor定义函数
- 获取session中保存的值
- 返回字典
- 在父模板中更新导航,插入登录状态判断代码。
- 注意用{% ... %}表示指令。
- {{ }}表示变量
- 完成注销功能。
- 清除session
- 跳转
# 上下文处理器 @app.context_processor def mycontext(): username = session.get('user') if username: return{'username':username} else: return{}
{% if username %} <li><a href="#">{{ username }}</a></li> <li><a href="{{ url_for('logout') }}">注销</a></li> {% else %} <a href="{{ url_for('login') }}">登陆</a> <a href="{{ url_for('regist') }}">注册</a> {% else if %}
@app.route('/logout/') def logout(): session.clear() return redirect(url_for('base'))