我正在使用flask,并尝试执行以下操作。
我已经定义了一个main.py文件,通过它我可以运行我的应用程序,即python main.py
python main.py
from flask import Flask from view import tags app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello World!' if __name__ == '__main__': app.run()
我定义了一个名为view的程序包,在其中将声明不同的view模块,每个模块都有自己的路由。view.tags.py
view.tags.py
from flask import Flask app = Flask(__name__) @app.route('/e') def hello_world2(): return 'Hello World!'
因此,我需要在main.py中具有用于运行服务器的全局应用程序对象,以及在包的视图类中用于注册路由的全局对象。那么,如何创建全局应用程序对象并在所有类之间共享呢?
可以从flask导入current_app。它存储对全局应用程序对象的引用。
from flask import current_app as app def home(): return render_template('base.html', name=app.name)