SqlAlchemy + Alembic - как исправить несоответствие схемы - PullRequest
0 голосов
/ 10 сентября 2018

Я только что переместил свое приложение Flask в свою промежуточную среду и заметил, что у меня теперь есть расхождение между двумя базами данных Postgres. Моя промежуточная база данных имеет столбец id в таблице instance_tags, а моя локальная база данных - нет.

Три миграции назад Я добавил столбец id, а затем удалил его в файле models.py. Когда он не удалялся из моей базы данных, я удалил его вручную. Я знаю, это, наверное, плохо! Во всяком случае, мой файл миграции выглядит как ...

def upgrade():
    # ### commands auto generated by Alembic - please adjust! ###
    op.create_table('instance_tags',
    sa.Column('id', sa.Integer(), nullable=False),
    sa.Column('instance_id', sa.String(length=30), nullable=False),
    sa.Column('tag_group', sa.String(length=50), nullable=True),
    sa.Column('tag', sa.String(length=50), nullable=True),
    sa.PrimaryKeyConstraint('id', 'instance_id', name=op.f('pk_instance_tags'))
    )

Как лучше всего удалить столбец id?

Заранее спасибо за помощь.

1 Ответ

0 голосов
/ 11 сентября 2018

Похоже, что вам нужно это op.drop_column(...)

op.drop_column('instance_tags', 'id')
...