diff --git a/alembic/versions/2228d49c383f_add_cascade_rules_to_userportal.py b/alembic/versions/2228d49c383f_add_cascade_rules_to_userportal.py index 27d868d7..3eadb5f2 100644 --- a/alembic/versions/2228d49c383f_add_cascade_rules_to_userportal.py +++ b/alembic/versions/2228d49c383f_add_cascade_rules_to_userportal.py @@ -7,7 +7,6 @@ Create Date: 2018-05-31 11:11:59.482112 """ from alembic import op import sqlalchemy as sa -from sqlalchemy.dialects import postgresql # revision identifiers, used by Alembic. revision = '2228d49c383f' @@ -17,14 +16,26 @@ depends_on = None def upgrade(): - op.drop_constraint('user_portal_user_fkey', 'user_portal', type_='foreignkey') - op.drop_constraint('user_portal_portal_fkey', 'user_portal', type_='foreignkey') - op.create_foreign_key('user_portal_user_fkey', 'user_portal', 'user', ['user'], ['tgid'], onupdate='CASCADE', ondelete='CASCADE') - op.create_foreign_key('user_portal_portal_fkey', 'user_portal', 'portal', ['portal', 'portal_receiver'], ['tgid', 'tg_receiver'], onupdate='CASCADE', ondelete='CASCADE') + try: + with op.batch_alter_table("user_portal") as batch_op: + batch_op.drop_constraint("user_portal_user_fkey", type_="foreignkey") + batch_op.drop_constraint("user_portal_portal_fkey", type_="foreignkey") + batch_op.create_foreign_key("user_portal_user_fkey", "user", ["user"], ["tgid"], + onupdate="CASCADE", ondelete="CASCADE") + batch_op.create_foreign_key("user_portal_portal_fkey", "portal", + ["portal", "portal_receiver"], ["tgid", "tg_receiver"], + onupdate="CASCADE", ondelete="CASCADE") + except ValueError: + return def downgrade(): - op.drop_constraint('user_portal_portal_fkey', 'user_portal', type_='foreignkey') - op.drop_constraint('user_portal_user_fkey', 'user_portal', type_='foreignkey') - op.create_foreign_key('user_portal_portal_fkey', 'user_portal', 'portal', ['portal', 'portal_receiver'], ['tgid', 'tg_receiver']) - op.create_foreign_key('user_portal_user_fkey', 'user_portal', 'user', ['user'], ['tgid']) + try: + with op.batch_alter_table("user_portal") as batch_op: + batch_op.drop_constraint("user_portal_user_fkey", type_="foreignkey") + batch_op.drop_constraint("user_portal_portal_fkey", type_="foreignkey") + batch_op.create_foreign_key("user_portal_user_fkey", "portal", + ["portal", "portal_receiver"], ["tgid", "tg_receiver"]) + batch_op.create_foreign_key("user_portal_portal_fkey", "user", ["user"], ["tgid"]) + except ValueError: + return diff --git a/alembic/versions/97d2a942bcf8_initial_revision.py b/alembic/versions/97d2a942bcf8_initial_revision.py index deb7cbd2..ca72c118 100644 --- a/alembic/versions/97d2a942bcf8_initial_revision.py +++ b/alembic/versions/97d2a942bcf8_initial_revision.py @@ -50,9 +50,13 @@ def upgrade(): sa.Column('portal', sa.Integer), sa.Column('portal_receiver', sa.Integer), sa.PrimaryKeyConstraint('user', 'portal', 'portal_receiver'), - sa.ForeignKeyConstraint(("user",), ("user.tgid",)), + sa.ForeignKeyConstraint(("user",), ("user.tgid",), + name="user_portal_user_fkey", + onupdate="CASCADE", ondelete="CASCADE"), sa.ForeignKeyConstraint(("portal", "portal_receiver"), - ("portal.tgid", "portal.tg_receiver"))) + ("portal.tgid", "portal.tg_receiver"), + name="user_portal_portal_fkey", + onupdate="CASCADE", ondelete="CASCADE")) op.create_table('message', sa.Column('mxid', sa.String), sa.Column('mx_room', sa.String),