flask 杂记

加载配置:

app = Flask(__name__)
app.config.from_object(__name__)

from_object() 会识别给出的对象(如果是一个字符串,它 会自动导入这个模块),然后查找所有已定义的大写变量。在我们这个例子里,配置 在几行代码前。你也可以把它移动到一个单独的文件中。

app.config.from_envvar('FLASKR_SETTINGS', silent=True)

silent参数是为了告诉Flask不要报错,即使没有设置 环境变量

 ===================

从 _future_ 中的import内容要在所以import的最前面

from __future__ import with_statement
from contextlib import closing

===================

from flask import g

@app.before_request def before_request(): g.db
= connect_db() @app.after_request def after_request(response): g.db.close() return response

用 before_request() 装饰的函数在每次请求之前 被调用,它没有参数。用 after_request() 装饰的函数是在每 次请求结束后被调用,而且它需要传入response。这类函数必须返回同一个response 对象或者一个不同的response对象

我们把当前的数据库连接保存在一个特殊的对象 g 里面,这个对象 flask已经为我们提供了。这个对象只能用来为一个请求保存信息,每一个函数都可以 访问这个对象。不要用其他的对象来保存信息,因为在多线程的环境下会无法工作。 g 对象是一个特殊的对象,它会在后台做一些魔术来确保它能够跟我 们预想的一样执行

===========================

猜你喜欢

转载自www.cnblogs.com/testzcy/p/10975621.html
今日推荐