Bug #7789
manque max_field_id dans les formulaire de workflow quand le workflow est importé
0%
Description
cf #7786
Quand on importe un workflow contenant un formulaire de workflow, ce dernier n'a pas de max_field_id. Quand on ajoute un champ, il attrape l'id 1, ça fait conflit, tout plante.
Exemple de formulaire planté avec deux champs id "1" : https://demo.dev.au-quotidien.com/backoffice/workflows/39/status/17/items/1/fields/
Fichiers
Révisions associées
Historique
Mis à jour par Thomas Noël il y a presque 9 ans
- Fichier 0001-wf-form-create-formdef.max_field_id-on-import-7789.patch 0001-wf-form-create-formdef.max_field_id-on-import-7789.patch ajouté
- Statut changé de Nouveau à En cours
- Assigné à mis à Thomas Noël
- Patch proposed changé de Non à Oui
Peut-être une correction plus générale serait intéressante (par exemple utiliser FormDef::migrate) mais en attendant, voici une proposition de calcul d'un max_field_id lors de l'import d'un formulaire de workflow (sans test unitaire pour l'instant, juste un test "en live")
Mis à jour par Frédéric Péters il y a presque 9 ans
C'est sans doute bon mais c'est vraiment le genre de truc pour lequel un test est bienvenu.
Mis à jour par Thomas Noël il y a presque 9 ans
- Fichier 0001-wf-form-create-formdef.max_field_id-on-import-7789.patch 0001-wf-form-create-formdef.max_field_id-on-import-7789.patch ajouté
Ca suffirait ?... (j'ai même testé le test; ça plante bien sans la correction)
Mis à jour par Frédéric Péters il y a presque 9 ans
Ok, sans l'ajout de la ligne vide dans wf/form.py
Mis à jour par Thomas Noël il y a presque 9 ans
- Statut changé de En cours à Résolu (à déployer)
commit 06d4796274502e4f5027b5d94c4aaae58e1975a4 Author: Thomas NOEL <tnoel@entrouvert.com> Date: Mon Jul 6 16:32:26 2015 +0200 wf/form: create formdef.max_field_id on import (#7789)
wf/form: create formdef.max_field_id on import (#7789)