Files
tgex-backend/migration/versions/3b8259700b61_add_subscription_status_and_.py
2025-12-01 10:30:31 +03:00

43 lines
1.3 KiB
Python

"""add subscription status and unsubscribed_at
Revision ID: 3b8259700b61
Revises: f05f85d10837
Create Date: 2025-11-25 18:45:04.642105
"""
from collections.abc import Sequence
import sqlalchemy as sa
from alembic import op
# revision identifiers, used by Alembic.
revision: str = '3b8259700b61'
down_revision: str | None = 'f05f85d10837'
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None
def upgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
# Создаём enum тип явно
subscription_status = sa.Enum('ACTIVE', 'UNSUBSCRIBED', name='subscriptionstatus')
subscription_status.create(op.get_bind(), checkfirst=True)
op.add_column(
'subscription',
sa.Column('status', subscription_status, nullable=False, server_default='ACTIVE'),
)
op.add_column('subscription', sa.Column('unsubscribed_at', sa.DateTime(timezone=True), nullable=True))
# ### end Alembic commands ###
def downgrade() -> None:
# ### commands auto generated by Alembic - please adjust! ###
op.drop_column('subscription', 'unsubscribed_at')
op.drop_column('subscription', 'status')
# Удаляем enum тип
sa.Enum(name='subscriptionstatus').drop(op.get_bind(), checkfirst=True)
# ### end Alembic commands ###