一尘不染

在应用程序上下文之外创建数据库

python

我有一个像这样的应用程序工厂

db = SQLAlchemy()

def create_app(environment):
  app = Flask(__name__)
  app.config.from_object(config[environment])

  db.init_app(app)
  # ... etc

  return app

然后,我有一个脚本,可以在应用程序上下文之外获取CSV。该脚本是一个cron,每x小时运行一次

我想以某种方式更新应用程序正在使用的sqlite数据库。这可能吗?


阅读 162

收藏
2021-01-20

共1个答案

一尘不染

Flask-SQLAlchemy只需要一个应用程序上下文即可运行。您可以手动创建应用上下文。

app = create_app(env)
ctx = app.app_context()
ctx.push()

# your code here

ctx.pop()

这来自这里这里的文档。

2021-01-20