"""Texte libre du badge Revision ID: 0024_volunteer_badge_text Revises: 0023_fee_transaction Create Date: 2026-10-27 `volunteer.badge_text` : texte propre à chaque bénévole, saisi par la coordination sur sa fiche et imprimé sur le badge par le champ `FREE_TEXT`. Les nouveaux types de champ de badge (`PHOTO`, `FREE_TEXT`) tiennent dans la colonne `badge_field.field_type` existante (VARCHAR sans contrainte CHECK, longueur 9 inchangée) : rien à migrer de ce côté. """ from collections.abc import Sequence import sqlalchemy as sa from alembic import op revision: str = "0024_volunteer_badge_text" down_revision: str | None = "0023_fee_transaction" branch_labels: str | Sequence[str] | None = None depends_on: str | Sequence[str] | None = None def upgrade() -> None: op.add_column("volunteer", sa.Column("badge_text", sa.String(), nullable=True)) def downgrade() -> None: op.drop_column("volunteer", "badge_text")