【发布时间】:2014-02-27 21:58:36
【问题描述】:
我正在尝试创建一个函数索引(使用 PostgreSQL 函数 lower())。使用 Alembic 创建表时出现此错误:
sqlalchemy.exc.ProgrammingError: (ProgrammingError) column "lower" does not exist
'CREATE INDEX ix_cities_name ON cities (lower)' {}
代码如下:
from flask import Flask
from flask.ext.sqlalchemy import SQLAlchemy
app = Flask(__name__)
db = SQLAlchemy(app)
class City(db.Model):
__tablename__ = 'cities'
name = db.Column(db.String(100), nullable=False)
db.Index('ix_cities_name', db.func.lower(db.metadata.tables['cities'].c.name))
【问题讨论】:
-
根据docs.sqlalchemy.org/en/rel_0_8/core/… 它应该可以工作,但我得到了上述错误。
标签: python postgresql sqlalchemy flask-sqlalchemy