安装烧瓶扩展:ext = Ext(app) 与 Ext(app)
Installing flask extension: ext = Ext(app) versus Ext(app)
我正在按照教程学习 Flask Web 开发。目前,我的应用程序的前几行是:
from flask import Flask, render_template
from flask_bootstrap import Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app)
但是,当我将 bootstrap = Bootstrap(app)
更改为 Bootstrap(app)
时,没有任何问题。那么将 Bootstrap
实例存储在一个变量中的目的是什么,它不会在其余代码中使用?
使用您当前的代码,确实没有必要将实例保存到变量中,
但实际上,您会创建 Bootstrap 实例而不传递 app
实例,然后在某些初始化方法中,您会调用 [=20] 的 init_app
方法=] 实例用 app
初始化它,像这样:
bootstrap = Bootstrap()
def create_app(config_name):
app = Flask(__name__)
app.config.from_object(config[config_name])
bootstrap.init_app(app)
return app
这还将包括其他工具的所有其他实例,例如 Flask-SQLALchemy、Moment、Mail...等
我正在按照教程学习 Flask Web 开发。目前,我的应用程序的前几行是:
from flask import Flask, render_template
from flask_bootstrap import Bootstrap
app = Flask(__name__)
bootstrap = Bootstrap(app)
但是,当我将 bootstrap = Bootstrap(app)
更改为 Bootstrap(app)
时,没有任何问题。那么将 Bootstrap
实例存储在一个变量中的目的是什么,它不会在其余代码中使用?
使用您当前的代码,确实没有必要将实例保存到变量中,
但实际上,您会创建 Bootstrap 实例而不传递 app
实例,然后在某些初始化方法中,您会调用 [=20] 的 init_app
方法=] 实例用 app
初始化它,像这样:
bootstrap = Bootstrap()
def create_app(config_name):
app = Flask(__name__)
app.config.from_object(config[config_name])
bootstrap.init_app(app)
return app
这还将包括其他工具的所有其他实例,例如 Flask-SQLALchemy、Moment、Mail...等