for ALTER, which is not what you illustrated earlier, server default comparison is turned off by default as it can be unreliable in some cases. Turn it on using compare_server_default=True: http://alembic.zzzcomputing.com/en/latest/api/runtime.html#alembic.runtime.environment.EnvironmentContext.configure.params.compare_server_default
On Thu, Sep 6, 2018 at 12:37 PM, Yingchen Zhang <cevin.che...@gmail.com> wrote: > like this: > > old model: > > class TestModel: > > ip = db.Column(db.INET, nullable=False) > > > new Model: > > class TestModel: > > ip = db.Column(db.VARCHAR(), nullable=False, server_default='127.0.0.1') > > > got migration: > > op.alter_column('test', 'ip', > existing_type=postgresql.INET(), > type_=sa.VARCHAR(), > nullable=False) > > > no default set. > > > 在 2018年9月6日星期四 UTC+8下午9:54:23,Mike Bayer写道: >> >> On Thu, Sep 6, 2018 at 3:50 AM, Yingchen Zhang <cevin....@gmail.com> >> wrote: >> > so, alembic not support `default` ( pgsql create columnn ) ? >> >> it does. use server_default. "default" in SQLAlchemy refers to a >> Python-side default. >> >> >> > >> > 在 2018年9月6日星期四 UTC+8上午12:24:54,Mike Bayer写道: >> >> >> >> On Wed, Sep 5, 2018 at 11:51 AM, Yingchen Zhang <cevin....@gmail.com> >> >> wrote: >> >> > db.Column('text_column', db.VARCHAR(20), default='test_text', >> >> > server_default='test_text', nullable=True) >> >> > >> >> > but, generated code like: >> >> > >> >> > sa.Column('text_column', sa.VARCHAR(20), nullable=True), >> >> >> >> I assume you are using Alembic autogeneration. The Python-side >> >> default "test_text" is not needed in an alembic autogeneration. The >> >> server_default however will be rendered. >> >> >> >> >> >> I ran your column as given: >> >> >> >> target_metadata = MetaData() >> >> >> >> Table( >> >> 't', target_metadata, >> >> Column('text_column', VARCHAR(20), default='test_text', >> >> server_default='test_text', nullable=True) >> >> ) >> >> >> >> alembic generates: >> >> >> >> def upgrade(): >> >> # ### commands auto generated by Alembic - please adjust! ### >> >> op.create_table('t', >> >> sa.Column('text_column', sa.VARCHAR(length=20), >> >> server_default='test_text', nullable=True) >> >> ) >> >> # ### end Alembic commands ### >> >> >> >> >> >> >> >> > >> >> > >> >> > how to set column default value ? >> >> > >> >> > -- >> >> > 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 sqlalchemy+...@googlegroups.com. >> >> > To post to this group, send email to sqlal...@googlegroups.com. >> >> > 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 sqlalchemy+...@googlegroups.com. >> > To post to this group, send email to sqlal...@googlegroups.com. >> > 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 sqlalchemy+unsubscr...@googlegroups.com. > To post to this group, send email to sqlalchemy@googlegroups.com. > 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 sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at https://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.