当我尝试使用Flask扩展名时,我的应用程序ModuleNotFound在from flask.ext.sqlalchemy import SQLAlchemy或上引发了错误from flask.exthook import ExtDeprecationWarning。我安装了Flask和扩展程序。为什么会出现此错误?
2 回答
阿晨1998
TA贡献2037条经验 获得超6个赞
您的代码或正在使用的代码中的某些内容正在尝试导入flask.ext
或flask.exthook
,而Flask 1.0中已不再存在。在显式弃用了至少一年之后,它们被完全删除,在此之前隐式弃用了很多年。任何仍依赖它的内容都必须升级。
任何对的使用from flask.ext import ...
应替换为扩展名的直接导入。例如flask.ext.sqlalchemy
变为flask_sqlalchemy
。
导入的唯一原因from flask.exthook import ExtDeprecationWarning
是使先前的弃用警告静音。由于不再存在,因此不会发出任何警告以保持静音,并且可以删除该代码。
湖上湖
TA贡献2003条经验 获得超2个赞
我遇到了这个问题,/bin/superset它仅用于警告,因此我将其静音为:
#from flask.exthook import ExtDeprecationWarning
from superset.cli import create_app
#warnings.simplefilter('ignore', ExtDeprecationWarning)
参见注释行。另外,安装sqlalchemy == 1.2.18有助于解决随后出现的错误(此行可能不相关,因此仅供参考)!
添加回答
举报
0/150
提交
取消