【发布时间】:2016-08-01 21:12:17
【问题描述】:
我试图在我的 sqlAlchemy 基类中添加一个简单的字符串/整数数组类型列,但没有运气。每次它给我一个异常,它不能呈现数组类型。我不明白为什么。我错过了什么?
这是我的课:
class Item_detail(Base):
__tablename__ = 'item_detail'
id = Column(Integer, primary_key=True)
detail_label = Column(String)
images_link = Column(ARRAY(String()), default=[])
engine = create_engine('sqlite:///bifi.db')
from sqlalchemy.orm import sessionmaker
session = sessionmaker()
session.configure(bind=engine)
Base.metadata.create_all(engine)
但是,sqlalchemy 告诉我:
File "/usr/local/lib/python2.7/site-packages/sqlalchemy/sql/visitors.py", line 79, in _compiler_dispatch
raise exc.UnsupportedCompilationError(visitor, cls)
sqlalchemy.exc.CompileError: (in table 'item_detail', column 'images_link'): Compiler <sqlalchemy.dialects.sqlite.base.SQLiteTypeCompiler object at 0x10f9aa210> can't render element of type <class 'sqlalchemy.dialects.postgresql.base.ARRAY'>
我不明白为什么我不能渲染它。我尝试了不同的数组类型,但没有成功。
【问题讨论】:
-
您正在连接到 SQLite 后端,该后端不支持来自 PostgreSQL 的
ARRAY。
标签: python flask sqlalchemy