Python AssertionError:sqlalchemy扩展未注册到当前应用程序
从表单输入数据时出错。Python AssertionError:sqlalchemy扩展未注册到当前应用程序,python,flask,flask-sqlalchemy,Python,Flask,Flask Sqlalchemy,从表单输入数据时出错。 sqlalchemy扩展未注册到当前应用程序。请确保先调用init_app()。 我在app.py文件中初始化了init_app(),如下所示: if __name__ == "__main__": db.create_all() db.init_app(app) 这就是我创建数据库URI的地方: app = Flask(__name__) app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///repor
sqlalchemy扩展未注册到当前应用程序。请确保先调用init_app()。
我在app.py文件中初始化了init_app()
,如下所示:
if __name__ == "__main__":
db.create_all()
db.init_app(app)
这就是我创建数据库URI的地方:
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///report.sqlite3'
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
app.config.from_object(config.DevelopementConfig)
在使用app.run()之前,我曾尝试过初始化,但最终删除了它,因为我意识到我初始化了两次app
我还没有创建\u init.py\u
文件。是否需要创建init.py
我也收到了警告,因为SQL\u ALCHEMY\u DATABASE\u URI未设置,尽管我正在设置它。我还使用了4种不同的数据库模型 我所做的是命名一个变量,然后从那里初始化它。我可能不知道我在说什么,但它对我起了作用。把这个放在代码的开头
sqlalchemy = SQLAlchemy()
sqlalchemy.init_app(app)
之后没有问题。您必须按说明将db.init_app()移出主块。