Blame alembic/versions/2b1743f77436_cascade_deleting_flags_when_tokens_are_.py
|
Pierre-Yves Chibon |
2659eb |
"""Cascade deleting flags when tokens are deleted
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
Revision ID: 2b1743f77436
|
|
Pierre-Yves Chibon |
2659eb |
Revises: 5993f9240bcf
|
|
Pierre-Yves Chibon |
2659eb |
Create Date: 2019-01-16 13:38:34.954904
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
"""
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
from alembic import op
|
|
Pierre-Yves Chibon |
2659eb |
import sqlalchemy as sa
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
# revision identifiers, used by Alembic.
|
|
Pierre-Yves Chibon |
2659eb |
revision = '2b1743f77436'
|
|
Pierre-Yves Chibon |
2659eb |
down_revision = '5993f9240bcf'
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
def upgrade():
|
|
Pierre-Yves Chibon |
2659eb |
""" Remove the existing foreign key in pull_request_flags.token_id and
|
|
Pierre-Yves Chibon |
2659eb |
re-create it with CASCADE on delete and update.
|
|
Pierre-Yves Chibon |
2659eb |
"""
|
|
Pierre-Yves Chibon |
2659eb |
# alter the constraints
|
|
Pierre-Yves Chibon |
641bec |
op.drop_constraint(
|
|
Pierre-Yves Chibon |
641bec |
'pull_request_flags_token_id_fkey', 'pull_request_flags',
|
|
Pierre-Yves Chibon |
641bec |
type_='foreignkey')
|
|
Pierre-Yves Chibon |
2659eb |
op.create_foreign_key(
|
|
Pierre-Yves Chibon |
2659eb |
u'pull_request_flags_token_id_fkey',
|
|
Pierre-Yves Chibon |
2659eb |
'pull_request_flags',
|
|
Pierre-Yves Chibon |
2659eb |
'tokens',
|
|
Pierre-Yves Chibon |
2659eb |
['token_id'],
|
|
Pierre-Yves Chibon |
2659eb |
['id'],
|
|
Pierre-Yves Chibon |
2659eb |
ondelete="CASCADE",
|
|
Pierre-Yves Chibon |
2659eb |
onupdate="CASCADE",
|
|
Pierre-Yves Chibon |
2659eb |
)
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
|
|
Pierre-Yves Chibon |
2659eb |
def downgrade():
|
|
Pierre-Yves Chibon |
2659eb |
""" Remove the existing foreign key in pull_request_flags.token_id and
|
|
Pierre-Yves Chibon |
2659eb |
re-create it with without specifying the behavior on delete and update.
|
|
Pierre-Yves Chibon |
2659eb |
"""
|
|
Pierre-Yves Chibon |
641bec |
op.drop_constraint(
|
|
Pierre-Yves Chibon |
641bec |
'pull_request_flags_token_id_fkey', 'pull_request_flags',
|
|
Pierre-Yves Chibon |
641bec |
type_='foreignkey')
|
|
Pierre-Yves Chibon |
2659eb |
op.create_foreign_key(
|
|
Pierre-Yves Chibon |
2659eb |
u'pull_request_flags_token_id_fkey',
|
|
Pierre-Yves Chibon |
2659eb |
'pull_request_flags',
|
|
Pierre-Yves Chibon |
2659eb |
'tokens',
|
|
Pierre-Yves Chibon |
2659eb |
['token_id'],
|
|
Pierre-Yves Chibon |
2659eb |
['id'],
|
|
Pierre-Yves Chibon |
2659eb |
)
|