python - Flask python manage.py db 升级引发错误

标签 python postgresql flask flask-sqlalchemy

我正在开发一个包含大量模型的 Flask 项目,其中一些模型使用 from sqlalchemy.dialects.postgresql import JSONB。从管理层,我根据这个 link 创建了 manage.py . python manage.py init & python manage.py migrate 工作正常,但是当我运行 python manage.py upgrade 时,迁移文件中出现以下错误。

    sa.Column('images', postgresql.JSONB(astext_type=Text()), nullable=True),
    NameError: global name 'Text' is not defined

有人知道怎么解决吗?

最佳答案

您需要导入该文本

因为我搜索它来自sqlalchemy.types,所以你需要在文件顶部导入它

from sqlalchemy.types import Text

但您甚至不需要提供 astext_type 作为参数,因为它默认为 Text()。来自 docs sqlalchemy.dialects.postgresql.JSON:

astext_type

the type to use for the JSON.Comparator.astext accessor on indexed attributes. Defaults to types.Text.

sqlalchemy.dialects.postgresql.JSONB

Bases: sqlalchemy.dialects.postgresql.json.JSON

关于python - Flask python manage.py db 升级引发错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39997252/

相关文章:

python - Tensorflow 1.13.1 tf.data 将多个图像与单行映射在一起

python - 如何通过 SQLAlchemy 中的自定义函数进行排序

python - 导入错误 : No module named flask. ext.httpauth

python - Flask 应用程序中的服务器信息

python - 我怎样才能既注册蓝图又将该应用程序添加到 flask 管理员

python - 如何将值列表转换为字典列表,并将相同的键添加到每个值?

python - 在不损失精度的情况下转换 np.datetime64 的时区

python - py2exe - 最大递归深度错误

postgresql - 在没有 Postgis 功能的情况下转储或恢复 Postgresql 数据库

java - 检查查询结果是否已更改,以免重新查询所有内容?