0

我在 Windows 10 中安装了烧瓶上传模块:

pip install flask flask-wtf flask-uploads

结果是:

成功安装 Jinja2-2.11.2 MarkupSafe-1.1.1 WTForms-2.3.1 Werkzeug-1.0.1 click-7.1.2 flask-1.1.2 flask-uploads-0.2.1 flask-wtf-0.14.3 itsdangerous-1.1。 0

然后在文本编辑器中导入模块时出现错误,如屏幕截图所示。无法导入烧瓶上传

运行 app.py 后,cmd 出现以下错误:

Error: While importing "app", an ImportError was raised:
Traceback (most recent call last):
  File "c:\users\seanv\onedrive\documents\web dev\##pprojects\flask\flask_uploads\myenv\lib\site-packages\flask\cli.py", line 240, in locate_app
    __import__(module_name)
  File "C:\Users\seanv\OneDrive\Documents\web dev\##pprojects\flask\flask_uploads\app.py", line 4, in <module>
    from flask_uploads import configure_uploads, IMAGES, UploadSet
  File "c:\users\seanv\onedrive\documents\web dev\##pprojects\flask\flask_uploads\myenv\lib\site-packages\flask_uploads.py", line 26, in <module>
    from werkzeug import secure_filename, FileStorage
ImportError: cannot import name 'secure_filename' from 'werkzeug' (c:\users\seanv\onedrive\documents\web dev\##pprojects\flask\flask_uploads\myenv\lib\site-packages\werkzeug\__init__.py)

愿了解问题的人帮助我提供可能的解决方案或建议。先感谢您。

4

1 回答 1

0

您的应用正在使用Flask-Uploads.

早在 2020 年 2 月,就有一个更新Werkzeug,该库Flask和包括 在内的许多库Flask-Uploads都基于该库。

此更新引入了一项重大更改,因为Werkzeug更改了其 API,即。的进口secure_filename

我向 提供了一个拉取请求Flask-Uploads,维护者接受了该请求。但非常遗憾和不幸的是,维护者不想为 PyPi 提供新的包。

因此,虽然您可以Flask-Uploads通过其 GitHub 存储库中的提交 ID 安装更新,但您不能再从 PyPi 安装它。

我向维护者请求了一个新版本,我也提供了帮助,但没有机会。

所以,最后,我决定分叉图书馆。

这是 PyPi 上的新包 https://pypi.org/project/Flask-Reuploaded/

这是存储库 https://github.com/jugmac00/flask-reuploaded

它是一个插入式替代品。所以你只需要安装新的包,它就可以工作了。无需更改应用程序中的任何导入或代码。

于 2020-06-27T17:35:49.783 回答