ImportError: cannot import name 'UserAgentMixin'

ImportError: cannot import name 'UserAgentMixin'

我在初始化 Flask DB 时遇到了问题,这是终端结果:

user@Pc:~/Documents/test$ flask db init
Traceback (most recent call last):
  File "/home/user/.local/bin/flask", line 7, in <module>
    from flask.cli import main
  File "/home/user/.local/lib/python3.6/site-packages/flask/__init__.py", line 17, in <module>
    from werkzeug.exceptions import abort
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/__init__.py", line 151, in <module>
    __import__('werkzeug.exceptions')
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/exceptions.py", line 71, in <module>
    from werkzeug.wrappers import Response
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/wrappers/__init__.py", line 30, in <module>
    from .request import PlainRequest
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/wrappers/request.py", line 6, in <module>
    from .user_agent import UserAgentMixin
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/wrappers/user_agent.py", line 1, in <module>
    from ..useragents import UserAgent
  File "/home/user/.local/lib/python3.6/site-packages/werkzeug/useragents.py", line 212, in <module>
    from werkzeug.wrappers import UserAgentMixin  # noqa
ImportError: cannot import name 'UserAgentMixin'

我正在开发 Ubuntu 18.04 LTS,使用 FlaskSQLAlchemyPythonPostgreSQL。这个错误是从哪里出现的,我该如何解决?

P.S : 我关注了 mega tutorial 关于 Flask

编辑 1:Werkzeug 已经安装

(venv) user@Pc:~/Documents/test$ pip install Werkzeug
Requirement already satisfied: Werkzeug in ./venv/lib/python3.6/site-packages

编辑 2:我不知道为什么会遇到这个问题,但是在我删除空格缩进后这个错误消失了

尝试pip install Werkzeug

UserAgentMixin 来自 werkzeug!

参考:https://tedboy.github.io/flask/generated/generated/werkzeug.UserAgentMixin.html

在我的例子中,我在包路径中找到了一个文件和一个文件夹,它们都命名为“wrappers”,所以我重新安装了包:

pip uninstall Werkzeug
pip install Werkzeug

虽然晚了点,但还是有帮助的