有两种方式来创建应用上下文。第一种是隐式的:无论何时当一个请求上下文被压栈时, 如果有必要的话一个应用上下文会被一起创建。
由于这个原因,你可以忽略应用 上下文的存在,除非你需要它。
第二种是显式地调用 app_context()
方法:
from flask import Flask, current_app
app = Flask(__name__)
with app.app_context():
# within this block, current_app points to app.
print current_app.name
在配置了 SERVER_NAME
时,应用上下文也被用于 url_for()
函 数。这允许你在没有请求时生成 URL 。