@@ -0,0 +1,44 @@
|
||||
"""web_user.lab_access — per-user доступ к модулю Lab.
|
||||
|
||||
Revision ID: web_user_lab_access
|
||||
Revises: lab_racion_normy
|
||||
Create Date: 2026-07-14
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import sqlalchemy as sa
|
||||
from alembic import op
|
||||
|
||||
revision = "web_user_lab_access"
|
||||
down_revision = "lab_racion_normy"
|
||||
branch_labels = None
|
||||
depends_on = None
|
||||
|
||||
|
||||
def upgrade(**kw) -> None:
|
||||
if kw.get("tag") == "reports":
|
||||
return
|
||||
bind = op.get_bind()
|
||||
insp = sa.inspect(bind)
|
||||
if "web_user" not in insp.get_table_names():
|
||||
return
|
||||
cols = {c["name"] for c in insp.get_columns("web_user")}
|
||||
if "lab_access" not in cols:
|
||||
with op.batch_alter_table("web_user", schema=None) as batch_op:
|
||||
batch_op.add_column(
|
||||
sa.Column("lab_access", sa.Boolean(), nullable=False, server_default=sa.false())
|
||||
)
|
||||
|
||||
|
||||
def downgrade(**kw) -> None:
|
||||
if kw.get("tag") == "reports":
|
||||
return
|
||||
bind = op.get_bind()
|
||||
insp = sa.inspect(bind)
|
||||
if "web_user" not in insp.get_table_names():
|
||||
return
|
||||
cols = {c["name"] for c in insp.get_columns("web_user")}
|
||||
if "lab_access" in cols:
|
||||
with op.batch_alter_table("web_user", schema=None) as batch_op:
|
||||
batch_op.drop_column("lab_access")
|
||||
Reference in New Issue
Block a user