首页 > 解决方案 > 导入 flask.ext 引发 ModuleNotFoundError

问题描述

当我尝试使用 Flask 扩展时,我的应用程序ModuleNotFound在类似from flask.ext.sqlalchemy import SQLAlchemyfrom flask.exthook import ExtDeprecationWarning. 我已经安装了 Flask 和扩展。为什么我会收到此错误?

标签: pythonflask

解决方案


您的代码或您正在使用的代码中的某些内容正在尝试导入flask.extor flask.exthook,这在 Flask 1.0 中不再存在。它们在被明显弃用至少一年后被完全删除,并在此之前被隐式弃用多年。任何仍然依赖它的东西都必须升级。

任何使用from flask.ext import ...都应替换为直接导入扩展。例如flask.ext.sqlalchemy变成flask_sqlalchemy.

导入的唯一原因from flask.exthook import ExtDeprecationWarning是消除以前的弃用警告。由于它不再存在,因此不会发出静音警告,并且可以删除该代码。


推荐阅读