如何在不发布的情况下从Flask修改数据库?

时间:2013-08-18 22:52:20

标签: python database sqlite flask

我有一个小的 Flask 应用程序,它显示 SQLite 3 数据库中保存的许多项目。我还有一个 cron 作业,它每天运行,并且(应该)将新条目插入到这个数据库中。

我创建了以下函数来修改数据库:

def add_entry(name):
    statement = 'insert ....'
    g.db.execute(statement, [name])
    g.db.commit()

但是,当我运行它时,我会收到:

RuntimeError: working outside of application context

如何在不发布到网址的情况下修改数据库?

1 个答案:

答案 0 :(得分:3)

您需要按照Flask documentation on this subject中的说明自行创建应用程序上下文。像

这样的东西
with app.app_context():
    add_entry()

应该这样做。