如何在烧瓶中的 app.run() 之前运行代码?

Xia*_*hai 6 python flask gunicorn

我是flask 的新手。我用flask+gunicorn 配置了一个服务器。

代码文件test.py是这样调用的:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def test():
    return aa+"world!"

if __name__ == '__main__':
    aa = "hello"
    app.run()
Run Code Online (Sandbox Code Playgroud)

运行它使用?gunicorn -b 0.0.0.0:8080 test:app

我弄错了?NameError: name 'aa' is not defined.

我想要一些代码,比如aa在 gunicorn 之前运行变量。

怎么做?

Vip*_*luv 6

在您之前放置一个小块@app.route,您不需要问题中的最后一个块

 @app.before_first_request
 def _declareStuff():
     global aa
     aa='hello'
Run Code Online (Sandbox Code Playgroud)