"""Extension unaccent Revision ID: d84bc592584e Revises: b8df1b913c79 Create Date: 2023-06-01 13:46:52.927951 """ from alembic import op import sqlalchemy as sa from sqlalchemy.orm import sessionmaker # added by ev # revision identifiers, used by Alembic. revision = "d84bc592584e" down_revision = "b8df1b913c79" branch_labels = None depends_on = None Session = sessionmaker() def upgrade(): # ### commands auto generated by Alembic - please adjust! ### bind = op.get_bind() session = Session(bind=bind) # Ajout extension pour recherches sans accents: # erreur: doit s'executer en superuser # session.execute(sa.text("""CREATE EXTENSION IF NOT EXISTS "unaccent";""")) # Clé étrangère sur identite session.execute( sa.text( """UPDATE are_stages_apprentissages SET etudid = NULL WHERE are_stages_apprentissages.etudid NOT IN ( SELECT id FROM Identite ); """ ) ) with op.batch_alter_table("are_stages_apprentissages", schema=None) as batch_op: batch_op.create_foreign_key( "are_stages_apprentissages_etudid_fkey", "identite", ["etudid"], ["id"], ondelete="CASCADE", ) # Les montants de taxe en float: with op.batch_alter_table("are_taxe_apprentissage", schema=None) as batch_op: batch_op.alter_column( "montant", existing_type=sa.INTEGER(), type_=sa.Float(), existing_nullable=True, ) # ### end Alembic commands ### def downgrade(): # ### commands auto generated by Alembic - please adjust! ### with op.batch_alter_table("are_taxe_apprentissage", schema=None) as batch_op: batch_op.alter_column( "montant", existing_type=sa.Float(), type_=sa.INTEGER(), existing_nullable=True, ) with op.batch_alter_table("are_stages_apprentissages", schema=None) as batch_op: batch_op.drop_constraint( "are_stages_apprentissages_etudid_fkey", type_="foreignkey" ) # ### end Alembic commands ###