登录验证(多个装饰器)

from flask import Flask,url_for,session,render_template
import functools app = Flask(__name__) def auth(func):
@functools.wraps(func)
def inner(*args,**kwargs):
username = session.get('name')
if not username:
return redirect(url_for("login"))
return func(*args,**kwargs)
return inner @app.route("/index",endpoint="homepage") # 别名
@auth # 登录验证放在下面
def index():
data_dict = DATA_DIC
return render_template("index.html",data_dict=data_dict) # 由于Flask别名默认为函数名并且重复会导致报错,所以需要加上functools

最新文章

  1. 常见CSS与HTML使用误区
  2. iOS之由身份证号返回性别
  3. jmeter 运行多个sql
  4. android 命令编译
  5. .net 连接数据库
  6. Knockout学习地址
  7. Java多线程 wait, notify 和 notifyAll
  8. Oracle 11g 客户端 下载地址
  9. Spring框架学习之第6节
  10. 【学习总结】Info.plist和pch文件的作用
  11. jBPM 4.4 数据库设计
  12. selenium webdriver python 操作Chrome浏览器
  13. 匹配不含有某个信息的sql语句写法
  14. C: printf参数执行顺序与前置后置自增自减的影响
  15. 用ttBulkCp把excel中的数据导入到timesten数据库中
  16. [转] 浅析JavaScript设计模式——发布-订阅/观察者模式
  17. jenkins使用(ubuntu16.0环境)
  18. Java-学习-喜欢-品牌:互联网公司成为动物园,拟人化品牌形象真的那么有意思?
  19. ArcGIS案例学习笔记-中国2000坐标转换实例
  20. asp.net搭建mybatis开发环境

热门文章

  1. openvswitch2.11.0修改源码后重新编译(2)
  2. Qt开发经验小技巧71-80
  3. aps.net StateServer设置
  4. PLSQL无法连接64位Oracle数据库/Database下拉框为空的解决方法
  5. mysqldump导出完整sql脚本
  6. SpringBoot系列教程web篇之404、500异常页面配置
  7. adb 常用命令汇总
  8. 宝塔linux定时任务设置
  9. LeetCode第154场周赛(Java)
  10. AVR单片机教程——数码管