35 lines
892 B
Python
35 lines
892 B
Python
"""Constrain user roles
|
|
|
|
Revision ID: c79217aea3e8
|
|
Revises: 5ad737bbca5e
|
|
Create Date: 2026-08-08 04:08:30.449389
|
|
|
|
"""
|
|
from alembic import op
|
|
import sqlalchemy as sa
|
|
|
|
|
|
# revision identifiers, used by Alembic.
|
|
revision = 'c79217aea3e8'
|
|
down_revision = '5ad737bbca5e'
|
|
branch_labels = None
|
|
depends_on = None
|
|
|
|
|
|
def upgrade() -> None:
|
|
# ### commands auto generated by Alembic - please adjust! ###
|
|
with op.batch_alter_table('user', schema=None) as batch_op:
|
|
batch_op.create_check_constraint(
|
|
'ck_user_role',
|
|
"role IN ('user', 'admin', 'viewer', 'coach')",
|
|
)
|
|
|
|
# ### end Alembic commands ###
|
|
|
|
|
|
def downgrade() -> None:
|
|
# ### commands auto generated by Alembic - please adjust! ###
|
|
with op.batch_alter_table('user', schema=None) as batch_op:
|
|
batch_op.drop_constraint('ck_user_role', type_='check')
|
|
|
|
# ### end Alembic commands ###
|