Projet

Général

Profil

Development #46800

Vider un champs liste à choix multiple d'une fiche avec l'action modification d'une fiche ne s'applique par correctement

Ajouté par Mikaël Ates il y a plus de 3 ans. Mis à jour il y a plus de 3 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
18 septembre 2020
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

La valeur donnée au champs dans l'action de modification de la fiche est une expression python (#46798).

Cette valeur peut-être prise d'un champs liste à choix multiple et peut donc être [].

Dans ce cas, on constate via un lecture de la fiche sur l'API que le champs liste de la liste à un _raw égale à [], mais que la valeur de la liste n'a pas été modifié.

Par exemple :

 'fields': {
[...]
            'particularites': 'Mobilité réduite',
            'particularites_raw': [],

Ce qui ressemble à #46657.

Si la valeur dans l'action de modification de fiche est laissée vide, le champs est bien vidé.

Il faut donc mettre en valeur python form_var_particularites_raw or None


Fichiers

Révisions associées

Révision 45580283 (diff)
Ajouté par Frédéric Péters il y a plus de 3 ans

workflows: set _display/_structured in case of empty value (#46800)

Historique

#2

Mis à jour par Frédéric Péters il y a plus de 3 ans

Avec #46031 et #46657, pour vider il faut laisser le champ vide, ça ne marche pas ?

#3

Mis à jour par Mikaël Ates il y a plus de 3 ans

Si, laisser le champs vide fonctionne. Mais le plus simple c'est de mettre directement le nom du champs liste utilisé sur le formulaire. Et donc si sur le formulaire on a coché aucune case, cela va donner [] et pas "un champs vide". Du coup dans ce cas ça met [] dans le _raw et ne modifie pas la valeur d'affichage.

#4

Mis à jour par Frédéric Péters il y a plus de 3 ans

Ok en fait il n'y a rien de particulier à "vider" dans ton commentaire, c'est général, appliquer une nouvelle valeur ne met pas les deux côtés (raw et pas) ?

#5

Mis à jour par Mikaël Ates il y a plus de 3 ans

Si la valeur du champs est différentes de [], ça met bien à jour le _raw et la valeur d'affichage :

            'particularites': 'Déficience visuelle, Fauteuil roulant',
            'particularites_raw': ['deficience-visuelle', 'fauteuil-roulant'],
#6

Mis à jour par Frédéric Péters il y a plus de 3 ans

en fait ok je vois le bug de code dupliqué et puis retiré le cas pour gérer ça et puis quand ça a été récupéré pour faire l'action de modification ça n'a pas été remis.

#7

Mis à jour par Frédéric Péters il y a plus de 3 ans

  • Assigné à mis à Frédéric Péters
  • Priorité changé de Bas à Normal
  • Privée changé de Oui à Non
#8

Mis à jour par Frédéric Péters il y a plus de 3 ans

#9

Mis à jour par Serghei Mihai il y a plus de 3 ans

  • Statut changé de Solution proposée à Solution validée
#10

Mis à jour par Frédéric Péters il y a plus de 3 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 45580283b7283e64073f310a63ee1cb797811ddf
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Fri Sep 18 19:01:58 2020 +0200

    workflows: set _display/_structured in case of empty value (#46800)
#11

Mis à jour par Frédéric Péters il y a plus de 3 ans

  • Statut changé de Résolu (à déployer) à Solution déployée

Formats disponibles : Atom PDF