博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
登录之后更新导航
阅读量:4993 次
发布时间:2019-06-12

本文共 2930 字,大约阅读时间需要 9 分钟。

  1.  用上下文处理器app_context_processor定义函数
    1. 获取session中保存的值
    2. 返回字典
  2. 在父模板中更新导航,插入登录状态判断代码。
    1. 注意用{% ... %}表示指令。
    2. {
      { }}表示变量
  3. 完成注销功能。
    1. 清除session
    2. 跳转
          
      {% block title %}{% endblock %}base
      {% block head %}{% endblock %}
      {% block main %}{% endblock %}
      from flask import Flask,request,render_template,redirect,url_for,sessionfrom flask_sqlalchemy import SQLAlchemyimport configfrom functools import wrapsfrom  datetime import datetimeapp = Flask(__name__)app.config.from_object(config)db=SQLAlchemy(app)class User(db.Model):    __tablename__='user'    id=db.Column(db.Integer,primary_key=True,autoincrement=True)    username = db.Column(db.String(20), nullable=False)    password = db.Column(db.String(20), nullable=False)    nickname = db.Column(db.String(50))#db.create_all()#增加数据#user=User(username = 'shanshan1',password = '111111')#db.session.add(user)#db.session.commit()#查询数据#user=User.query.filter(user.username == 'shanshan1').first()#print(user.id,user.username,user.password)#修改数据#user=User.query.filter(user.username == 'shanshan3').first()#user.password = '0000'#db.session.commit()#删除数据#user=User.query.filter(user.username == 'shanshan3').first()#db.session.delete(user)#db.session.commit()@app.route('/')def index():    return  render_template('shouye.html')@app.route(   '/manhua')def manhua():    return  render_template('manhua.html')@app.route('/login',methods=['GET','POST'])def login():    if request.method =='GET':        return render_template('denglu.html')    else:        name = request.form.get('name')        passw = request.form.get('password')        user = User.query.filter(User.username == name).first()    if user:       if user.password==passw:           session['user']=name           return redirect(url_for('manhua'))       else:           return "密码错误!"    else:        return "用户名不存在!"@app.context_processordef mycontext():    usern=session.get('user')    if usern:        return {
      'name':usern} else: return {}@app.route('/logout')def logout(): session.clear() return redirect(url_for('manhua'))@app.route("/register",methods=['GET','POST'])def register(): if request.method == 'GET': return render_template("zhuce.html") else: name = request.form.get('name') passw = request.form.get('password') user = User.query.filter(User.username == name).first() if user: return "用户名已存在!" else: user = User(username=name, password=passw) db.session.add(user) db.session.commit() return render_template("denglu.html")if __name__ == '__main__': app.run(debug=True)

           

       

       

转载于:https://www.cnblogs.com/33333-/p/7889878.html

你可能感兴趣的文章
《甄嬛传》影评(整理)
查看>>
数的位数
查看>>
MySQL合并多行
查看>>
[openstack] RDO Quickstart
查看>>
[转载]struts2 中的 addActionError 、addFieldEr
查看>>
[转载]我的PMP复习备考经验谈(上篇)—— 一本关于PMP备考的小指南
查看>>
Mysql命令集
查看>>
记java应用linux服务单个CPU使用率100%分析
查看>>
将文件字节输出流写入到文本中
查看>>
Linux编程之给你的程序开后门
查看>>
Ubuntu下Hadoop的安装和配置
查看>>
VS2010中生成遇到的 web.config 问题
查看>>
Nginx安装部署(反向代理与负载均衡)
查看>>
2018年最新小程序一键智能生成平台限时限量销售!
查看>>
集合遍历过程iterator, 添加删除元素报异常
查看>>
echarts一些笔记
查看>>
最长上升子序列
查看>>
Java-面向对象
查看>>
salesforce 零基础学习(四十四)实现checkbox列表简单过滤功能
查看>>
Android 异步下载
查看>>