"""fach-Tabelle: feste Fächer-Liste je Objekttyp Revision ID: 0004_add_fach Revises: 0003_add_benutzer_email Create Date: 2026-09-04 Nutzer-Vorgabe: feste Fächer-Liste pro Objekttyp statt Freitext bei jeder Vorlagenposition. Additive Schema-Erweiterung, bestehende Vorlagenpositionen (freies Fach-Textfeld) bleiben unverändert nutzbar (Prompt-Vorgabe "optional sonstiges für freies Textfeld"). """ from typing import Sequence, Union from alembic import op revision: str = "0004_add_fach" down_revision: Union[str, None] = "0003_add_benutzer_email" branch_labels: Union[str, Sequence[str], None] = None depends_on: Union[str, Sequence[str], None] = None def upgrade() -> None: op.execute( """ CREATE TABLE fach ( id SERIAL PRIMARY KEY, objekttyp_id INTEGER NOT NULL REFERENCES objekttyp(id), name TEXT NOT NULL, sortierung INTEGER NOT NULL DEFAULT 0 ); """ ) def downgrade() -> None: op.execute("DROP TABLE fach;")