SQLAlchemy right now does not support reflection of so-called "functional" indexes that have a SQL function or similar inside of them. Therefore Alembic can't autogenerate these in terms of a table that already exists because there's nothing to compare towards, so you need to do those indexes manually if you are adding it to an existing model.
On Tue, Sep 11, 2018 at 12:59 AM, Yingchen Zhang <[email protected]> wrote: > class InviteCode(db.Model): > __tablename__ = 'invite_code' > id = db.Column(db.BigInteger, primary_key=True, autoincrement=True) > code = db.Column(db.VARCHAR(32), nullable=False) > created_at = db.Column(db.TIMESTAMP(True), nullable=False) > status = db.Column(db.VARCHAR(1), nullable=False, server_default='0') > user_id = db.Column(db.BigInteger, nullable=True, server_default=None) > > __table_args__ = ( > Index('idx_invite_code', func.lower(code), unique=True), <------ > not work, migrations file have not this operation > Index('idx_invite_userid', 'user_id', unique=False), > ) > > def __init__(self, code=None, created_at=None, status=None, > user_id=None): > self.code = code > self.created_at = created_at if created_at is not None else > arrow.utcnow() > self.status = status > self.user_id = user_id > > > > -- > SQLAlchemy - > The Python SQL Toolkit and Object Relational Mapper > > http://www.sqlalchemy.org/ > > To post example code, please provide an MCVE: Minimal, Complete, and > Verifiable Example. See http://stackoverflow.com/help/mcve for a full > description. > --- > You received this message because you are subscribed to the Google Groups > "sqlalchemy" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To post to this group, send email to [email protected]. > Visit this group at https://groups.google.com/group/sqlalchemy. > For more options, visit https://groups.google.com/d/optout. -- SQLAlchemy - The Python SQL Toolkit and Object Relational Mapper http://www.sqlalchemy.org/ To post example code, please provide an MCVE: Minimal, Complete, and Verifiable Example. See http://stackoverflow.com/help/mcve for a full description. --- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.
