Développement #113035
closedPouvoir récupérer les données supprimées depuis l'historique des demandes/fiches
0%
Description
À la création d'une demande ou d'une fiche, puis ensuite à chaque modification du dictionnaire de donnée (formdata.data) la valeur actuelle de celui-ci est sauvegardée dans l'historique via la classe ContentSnapshotPart. L'idée ici serait de pouvoir restaurer dans la colonne d'une table de formulaire ou de fiche les dernières valeurs enregistrées pour cette colonne telle que conservée dans l'historique.
Ceci devrait permettre à l'avenir de se passer d'une restauration de base en cas de perte de donnée due à une mauvaise manipulation.
L'API serait FormDef.restore_field_data(field_id: str) -> int qui retournerait le nombre de formdata mis à jour.
Dans un premier temps cela permettrait de faire cette opération en shell facilement, on pourra ensuite réfléchir ensuite à ajouter une action dans l'interface web ou dans l'historique des modifications (ça me semblerait logique de pouvoir y isoler les suppressions de champs et d'avoir une fonction restaurer qui restaure l'objet Field ainsi que les données, mais ça pourra se discuter plus tard).
Updated by Benjamin Dauvergne about 2 months ago
- Status changed from Nouveau to En cours
🤖 Une pull request concernant ce ticket a été ouverte :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/2538
- Titre : WIP: misc: add objdef.restore_field_data() method (#113035)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/2538/files
Updated by Benjamin Dauvergne about 2 months ago
En fait ça ne marche que si dans le chemin du workflow il y a eu un set-backoffice-field, ce qui est actuellement dans 90% des formulaires le cas, je pencherai pour en plus rajouter une photographie des valeurs dans l'appel à juste_created(), qui est actuellement désactivé.
Updated by Benjamin Dauvergne about 2 months ago
Benjamin Dauvergne a écrit (#note-2):
En fait ça ne marche que si dans le chemin du workflow il y a eu un set-backoffice-field, ce qui est actuellement dans 90% des formulaires le cas, je pencherai pour en plus rajouter une photographie des valeurs dans l'appel à juste_created(), qui est actuellement désactivé.
En fait non ça marche tout le temps, c'est juste que dans le cas du submit d'un formulaire c'est fait à la main, au lieu d'utiliser ContentSnapshotPart.take() pour être certain d'avoir le bon contenu.
Updated by Benjamin Dauvergne about 2 months ago
- Status changed from En cours to Solution proposée
Updated by Benjamin Dauvergne about 2 months ago
- Related to Développement #56296: Idée : dans clean_unused_files ne traiter les fichiers que s'ils ont plus d'un certain âge et d'abord les déplacer added
Updated by Benjamin Dauvergne about 2 months ago
- Subject changed from Avoir une méthode sur les ObjDef pour récupérer le contenu d'un champ supprimé to Pouvoir récupérer les données supprimées depuis l'historique des demandes/fiches
- Description updated (diff)
Updated by Nicolas Roche 27 days ago
- Status changed from Solution proposée to Solution validée
🤖 Pull request approuvée :
Updated by Benjamin Dauvergne 27 days ago
- Status changed from Solution validée to Résolu (à déployer)
🤖 Pull request fusionnée :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/2538
- Titre : misc: add objdef.restore_field_data() method (#113035)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/2538/files
Updated by Transition automatique 27 days ago
- Status changed from Résolu (à déployer) to Solution déployée