Flask的g对象

  作用:g可以可以看作是单词global的缩写,使用“from flask import g”导入,g对象的作用是保存一些在一次请求中多个地方的都需要用到的数据,这些数据可能在用到的时候都需要去进行判断或其他处理之后才能获得,如果在第一次获取的时候就存放到g对象中,就可以避免一些不必要的操作。

  例如:在某一个函数中定义了“g.username='Jason'”(可能为了定义这个值,会进行一些别的操作,比如数据库查询判断等,定义好了这个值后就不用再每次用到它的时候都去进行这些操作了),那么在其他地方就可以直接使用“g.username”来获取这个值,或者使用“hasattr(g, 'username')”判断g中有没有这个值,需要特别注意的是当你处理完这次请求并返回数据给客户端浏览器后,这个g对象中所有的值都会被删除掉,也就是它只有在一次请求中有效。


Flask钩子函数(hook)

  钩子(hook)函数最大的特点其实就是会将定义的钩子函数在某个特定的位置自动执行,而不用每次需要用到的时候手动去定义它的执行,当然不同的钩子函数有不同作用和效果。常用的钩子函数有(app为Flask对象):

  1. app.before_request:是一个装饰器,被装饰的函数会在请求处理之前执行(即执行视图函数之前执行)。
  2. app.context_processor:是一个装饰器,被装饰的函数必须返回一个字典(没有结果也可以返回空的字典),字典中的key字符串会被渲染为HTML页面中的变量,变量的值就是对应key的value,重点在于返回的这个字典可以在任何HTML页面中直接使用,而不用通过url传参的方式传入HTML中。

最新文章

  1. IE6下margin时,float浮动产生双倍边距
  2. AtCoder Regular Contest 061
  3. Unity3D 之UGUI 滚动条
  4. Umbraco Content属性
  5. web beacon
  6. 使用nginx代理kibana并设置身份验证
  7. CSS小技巧-煎蛋的画法~
  8. jquery 变量和原生js变量的关系
  9. unity零基础开始学习做游戏(六)背景给我“滚”~
  10. SSIS中xml的输入输出
  11. c++ _pFirstBlock == pHead
  12. 小程序 滚动wx.pageScrollTo
  13. 一、linux概述
  14. python基础--字典
  15. 图片完全填充CardView区域
  16. Linux 常见操作
  17. 利用tcp三次握手,使用awl伪装MAC地址进行多线程SYN洪水攻击
  18. python第六十五天--python操作mysql
  19. np.savetxt()——将array保存到txt文件,并保持原格式
  20. 17秋 SDN课程 第五次上机作业

热门文章

  1. Spark编程模型(中)
  2. eclipse链接Hadoop集群时报错Error:Call From xxx/xxx.xxx.xxx.xxx to hostname1:9000 failed on connection exception
  3. net core 的Generic Host 之Generic Host Builder
  4. 如何 求Ifeature 的面积
  5. 关于alibaba.fastjson的一些简单使用
  6. Spring Cloud 服务发现和消费
  7. View模块
  8. mysql数据库初步了解
  9. 巧用前端神器,fakerjs生成json文件
  10. 一个容易被忽视的css选择器