g对象  一次请求中使用

下面用redirect重定向,不是同一次请求了

g:global

1. g对象是专门用来保存用户的数据的。 
2. g对象在一次请求中的所有的代码的地方,都是可以使用的。

使用步骤: 
1.创建一个utils.py文件,用于测试除主文件以外的g对象的使用 
utils.py

  1.  
    #encoding: utf-8
  2.  
     
  3.  
    from flask import g
  4.  
     
  5.  
    def login_log():
  6.  
    print u'当前登录用户是:%s' % g.username
  7.  
     
  8.  
     
  9.  
    def login_ip():
  10.  
    print u'当前登录用户的IP是:%s' % g.ip

2.在主文件中调用utils.py中的函数

  1.  
    #encoding: utf-8
  2.  
     
  3.  
    from flask import Flask,g,request,render_template
  4.  
    from utils import login_log,login_ip
  5.  
     
  6.  
    app = Flask(__name__)
  7.  
     
  8.  
     
  9.  
    @app.route('/')
  10.  
    def hello_world():
  11.  
    return 'Hello World!'
  12.  
     
  13.  
     
  14.  
    @app.route('/login/',methods=['GET', 'POST'])
  15.  
    def login():
  16.  
    if request.method == 'GET':
  17.  
    return render_template('login.html')
  18.  
    else:
  19.  
    username = request.form.get('username')
  20.  
    password = request.form.get('password')
  21.  
    g.username = username
  22.  
    g.ip = password
  23.  
    login_log()
  24.  
    login_ip()
  25.  
    return u'恭喜登录成功!'
  26.  
     
  27.  
    if __name__ == '__main__':
  28.  
    app.run()

测试: 
 现在在浏览器里面,访问两次服务器,效果如下:

flask g对象的更多相关文章

  1. Flask g 对象

    1.什么是g对象? 在 flask 中,有一个专门用来存储用户信息的 g 对象,g的全称的为global. g 对象在一次请求中的所有的代码的地方,都是可以使用的. 赋值方式 from flask i ...

  2. Flask上下文管理、session原理和全局g对象

    一.一些python的知识 1.偏函数 def add(x, y, z): print(x + y + z) # 原本的写法:x,y,z可以传任意数字 add(1,2,3) # 如果我要实现一个功能, ...

  3. flask的g对象

    故名思议我们可以理解这个g对象是一个全局的对象,这个对象存储的是我们这一次请求的所有的信息,只是存储这一次的请求 g:global 1. g对象是专门用来保存用户的数据的.  2. g对象在一次请求中 ...

  4. flask系列八之请求方法、g对象和钩子函数

    一.get方法 ,post方法 post请求在模板中要注意几点: (1)input标签中,要写name来标识这个value的key,方便后台获取. (2)在写form表单的时候,要指定method=' ...

  5. Flask初学者:g对象,hook钩子函数

    Flask的g对象 作用:g可以可以看作是单词global的缩写,使用“from flask import g”导入,g对象的作用是保存一些在一次请求中多个地方的都需要用到的数据,这些数据可能在用到的 ...

  6. flask框架(七)——蓝图、请求上下文、g对象、信号、flask_session

    蓝图 作用:对程序进行目录结构划分 不使用蓝图情况下,自己分文件 目录结构: -templates -views -__init__.py -user.py -order.py -app.py app ...

  7. Flask中current_app和g对象

      Flask零基础到项目实战(七)请求方法.g对象和钩子函数 一.get方法 二.post方法 post请求在模板中要注意几点: input标签中,要写name来标识这个value的key,方便后台 ...

  8. 六十九:flask上下文之线程隔离的g对象的使用

    保存全局对象的g对象g对象是在整个flask应用运行期间都是可以使用的,并且也是和request一样,是线程隔离的,这个对象是专门用来存放开发者自己定义的一些数据,方便在整个flask程序中都可以使用 ...

  9. Flask框架 (四)—— 请求上下文源码分析、g对象、第三方插件(flask_session、flask_script、wtforms)、信号

    Flask框架 (四)—— 请求上下文源码分析.g对象.第三方插件(flask_session.flask_script.wtforms).信号 目录 请求上下文源码分析.g对象.第三方插件(flas ...

随机推荐

  1. python 项目部署virtualenv

    安装virtualenv---------------------------------------- mac: pip3 install virtualenv ubuntu: apt instal ...

  2. virtualenvwrapper.sh: There was a problem running the initialization hooks. If Python could not import the module virtualenvwrapper.hook_loader, check that virtualenvwrapper.........(解决办法)

    Linux(ubuntu)上python2与python3共存环境下,安装virtualenvwrapper后, 其环境变量被自动设置为VIRTUALENVWRAPPER_PYTHON=/usr/bi ...

  3. python书籍推荐:Python数据科学手册

    所属网站分类: 资源下载 > python电子书 作者:today 链接:http://www.pythonheidong.com/blog/article/448/ 来源:python黑洞网 ...

  4. C语言学习6

    int i; 定义整形变量i int *p;  p为指向整型数据的指针变量 int a[n]: 定义整形数组a,他有n个元素 int *p[n]:   定义指针数组p,它有n个指向整型数据的指针元素组 ...

  5. LeetCode(50) Pow(x,n)

    题目 Implement pow(x, n). Show Tags Show Similar Problems 分析 一个不利用标准幂次函数的,求幂算法实现. 参考了一个很好的解析博客:Pow(x,n ...

  6. mac 文本处理命令分享

    mac 文本处理命令分享 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} pre.src {background-color ...

  7. c++学习第一课--输入/输出

    1,程序: #include<iostream> int main() {     std::cout<<"Enter two numbers:"<& ...

  8. 在jupyter notebook 中编辑公式

    jupyter notebook是一个python的交互式开发环境,广泛应用于数据分析的场景下. 在jupyter notebook中,还可以很方便的编辑数学公式. 1.Markdown状态 编辑公式 ...

  9. Linux学习笔记02

    1.文件处理命令:touch touch [文件目录][文件名] 如:touch /tmp/jiejie/jiejie.conf2.文件处理命令:cat cat 参数[文件目录][文件名]//显示文件 ...

  10. codeforces 330b

    #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 1100 int map[N]; ...