Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/355.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在不过帐的情况下修改Flask中的DB?_Python_Database_Sqlite_Flask - Fatal编程技术网

Python 如何在不过帐的情况下修改Flask中的DB?

Python 如何在不过帐的情况下修改Flask中的DB?,python,database,sqlite,flask,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 app

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

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

def add_entry(name):
    statement = 'insert ....'
    g.db.execute(statement, [name])
    g.db.commit()
但是,当我运行它时,我会收到:

RuntimeError: working outside of application context

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

您需要自己创建应用程序上下文,如中所述。差不多

with app.app_context():
    add_entry()

应该这样做。

您需要自己创建应用程序上下文,如中所述。差不多

with app.app_context():
    add_entry()
我们应该做到这一点