From 87ef81005a183f6bba00e90d031e31c5d52a0450 Mon Sep 17 00:00:00 2001 From: TheoLechemia Date: Thu, 22 Aug 2024 17:43:13 +0200 Subject: [PATCH] allow none for liste_valeur_attribut --- ...et_field_liste_valeur_attribut_nullable.py | 35 +++++++++++++++++++ apptax/taxonomie/models.py | 5 ++- 2 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 apptax/migrations/versions/b250cfcaab64_set_field_liste_valeur_attribut_nullable.py diff --git a/apptax/migrations/versions/b250cfcaab64_set_field_liste_valeur_attribut_nullable.py b/apptax/migrations/versions/b250cfcaab64_set_field_liste_valeur_attribut_nullable.py new file mode 100644 index 00000000..7c296236 --- /dev/null +++ b/apptax/migrations/versions/b250cfcaab64_set_field_liste_valeur_attribut_nullable.py @@ -0,0 +1,35 @@ +"""set field liste_valeur_attribut nullable + +Revision ID: b250cfcaab64 +Revises: 0db13d65cb27 +Create Date: 2024-08-22 14:23:29.831794 + +""" + +from alembic import op +import sqlalchemy as sa + + +# revision identifiers, used by Alembic. +revision = "b250cfcaab64" +down_revision = "0db13d65cb27" +branch_labels = None +depends_on = None + + +def upgrade(): + op.alter_column( + table_name="bib_attributs", + column_name="liste_valeur_attribut", + nullable=True, + schema="taxonomie", + ) + + +def downgrade(): + op.alter_column( + table_name="bib_attributs", + column_name="liste_valeur_attribut", + nullable=False, + schema="taxonomie", + ) diff --git a/apptax/taxonomie/models.py b/apptax/taxonomie/models.py index ced838c8..63cddc06 100644 --- a/apptax/taxonomie/models.py +++ b/apptax/taxonomie/models.py @@ -85,7 +85,10 @@ class BibAttributs(db.Model): id_attribut = db.Column(db.Integer, primary_key=True) nom_attribut = db.Column(db.Unicode, nullable=False) label_attribut = db.Column(db.Unicode, nullable=False) - liste_valeur_attribut = db.Column(db.Text, nullable=True) + # TODO : fix in next flask-admin release -> liste_valeur_attribut is set with Unicode and + # not Text because Text field convert None to empty string + # https://github.com/pallets-eco/flask-admin/pull/2321 + liste_valeur_attribut = db.Column(db.Unicode, nullable=True) obligatoire = db.Column(db.BOOLEAN, nullable=True, server_default=FetchedValue()) desc_attribut = db.Column(db.Text) type_attribut = db.Column(db.Unicode)