Fix migrations 004-006: add column existence checks to prevent duplicate column errors

This commit is contained in:
Koncept Kit
2026-01-05 11:50:26 +07:00
parent 9266521bf1
commit df789612e8
3 changed files with 62 additions and 26 deletions

View File

@@ -20,8 +20,16 @@ depends_on: Union[str, Sequence[str], None] = None
def upgrade() -> None:
"""Rename is_active to active"""
op.alter_column('subscription_plans', 'is_active', new_column_name='active')
"""Rename is_active to active (skip if already renamed)"""
from sqlalchemy import inspect
conn = op.get_bind()
inspector = inspect(conn)
# Check if rename is needed
existing_columns = {col['name'] for col in inspector.get_columns('subscription_plans')}
if 'is_active' in existing_columns and 'active' not in existing_columns:
op.alter_column('subscription_plans', 'is_active', new_column_name='active')
def downgrade() -> None: