2

这是我在这里的第一个问题,请不要吃我!我完全是新手,出于某种OAuth原因,我尝试使用烧瓶舞蹈编写烧瓶应用程序。似乎我做了一些愚蠢的事情,因为当我尝试import SQLAlchemyBackend class from flask_dance.consumer.backend.sqlaPython 时返回

ModuleNotFoundError:没有名为“flask_dance.consumer.backend”的模块

你能告诉我我到底做错了什么吗?

我为 SQLAlchemy db 使用 flask-dance[sqla] 版本。首先我安装了没有 SQLAlchemy 支持的基本版本,然后我卸载了它并安装了当前版本(全部在 venv 中)。这是否可能影响 FD 功能及其自身的模块和子模块方案?

我不知道如何解决这个问题以及去哪里。谷歌也无济于事。

我在引用中看到的是:

Traceback (most recent call last):   File "c:\users\igor\envs\2do2\lib\site-packages\flask\cli.py", line 235, in locate_app
    __import__(module_name)   File "C:\Users\igor\projects\gp\2do2\app\app.py", line 8, in <module>
    from flask_dance.consumer.backend.sqla import SQLAlchemyBackend ModuleNotFoundError: No module named 'flask_dance.consumer.backend'
4

1 回答 1

7

Flask-Dance 1.4.0中,“后端”被重命名为“存储”,因为“后端”这个词在 Web 开发的上下文中意味着不同的东西。此更改在 1.4.0 中向后兼容,但在Flask-Dance 2.0.0中删除了向后兼容功能。

要在 Flask 2.0 及更高版本中使用此功能,只需在您看到的任何地方将“后端”一词替换为“存储”一词即可。例如,这行代码:

from flask_dance.consumer.backend.sqla import SQLAlchemyBackend

改为:

from flask_dance.consumer.storage.sqla import SQLAlchemyStorage

如果您在当前文档中看到任何对“后端”的引用,请告诉我!它们现在都应该是“存储”。

于 2019-05-25T13:08:31.277 回答