| 1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- """add_settings_table
- Revision ID: c1148f55dcd9
- Revises: 277d91f6540f
- Create Date: 2025-12-29 00:46:10.442689+00:00
- """
- from typing import Sequence, Union
- from alembic import op
- import sqlalchemy as sa
- from sqlalchemy.dialects import postgresql
- # revision identifiers, used by Alembic.
- revision: str = 'c1148f55dcd9'
- down_revision: Union[str, None] = '277d91f6540f'
- branch_labels: Union[str, Sequence[str], None] = None
- depends_on: Union[str, Sequence[str], None] = None
- def upgrade() -> None:
- # Create settings table
- op.create_table(
- 'settings',
- sa.Column('id', sa.Integer(), nullable=False),
- sa.Column('key', sa.String(length=255), nullable=False),
- sa.Column('value', postgresql.JSON(astext_type=sa.Text()), nullable=False),
- sa.Column('updated_at', sa.DateTime(), nullable=True),
- sa.PrimaryKeyConstraint('id'),
- sa.UniqueConstraint('key')
- )
- # Insert default auto_registration setting (enabled by default)
- op.execute(
- """
- INSERT INTO settings (key, value, updated_at)
- VALUES ('auto_registration', '{"enabled": true}', NOW())
- """
- )
- def downgrade() -> None:
- op.drop_table('settings')
|