导入错误:无法从“sqlalchemy.orm.query”导入名称“_ColumnEntity”

在虚拟环境中使用 pip 安装 apache-superset 后,我​​运行:

superset upgrade db   

我遇到以下错误:

ImportError: cannot import name '_ColumnEntity' from 'sqlalchemy.orm.query' (/Users/ahmedawny/supersetenv/lib/python3.7/site-packages/sqlalchemy/orm/query.py)

任何意见,将不胜感激。

回答

这样做的核心原因是 sqlalchemy 1.4 已发布,因此它现在是 pip 安装的默认值。有许多界面更改并添加了新的查询界面。

所以升级到 1.4 会破坏依赖于 sqlalchemy 1.3 API 内部的东西。在您的 requirements.txt 文件中——将项目版本固定到 1.3.x 系列,直到您的其他内容赶上。例如,截至目前,sqlalchemy-utils 仍依赖于 sqlalchemy 1.3x。

要求.txt:

sqlalchemy < 1.4.0

然后使用:

pip -r requirements.txt

“降级”到固定版本。

  • pip install -r ...
  • Who does breaking changes from 1.3.x to 1.4.0? (sigh)

以上是导入错误:无法从“sqlalchemy.orm.query”导入名称“_ColumnEntity”的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>