Development #66742
api: appliquer automatiquement unflatten
0%
Description
Si une clé contenant un /
est détecté au premier niveau. Ça devrait suffire.
Fichiers
Demandes liées
Révisions associées
Historique
Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Fichier 0001-api-apply-unflatten-to-input-JSON-66742.patch 0001-api-apply-unflatten-to-input-JSON-66742.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Lié à Bug #66741: API plate pour /api/roles/XXX/parents ajouté
Mis à jour par Paul Marillonnet il y a plus d'un an
Ok dans l’idée, juste pour ma compréhension, dans la fonction récursive set_path
, je lis :
if isinstance(key, int):
# […]
if len(d) == key:
d.append(new)
else:
new = d[key]
# […]
set_path(path, orig_key, new, value, i + 1)
dans ce cas
else: new = d[key]
, avec i > 0
(qui si je comprends bien correspond à un parcours d’un élément composé à l’intérieur d’une liste), le parcours est tronqué et on s’arrête là dans la liste parente, non ?
Aussi, sans doute avoir quelques tests générique à ce nouveau parseur, indépendamment de l’API de gestion des héritages entre rôles ?
Mis à jour par Benjamin Dauvergne il y a plus d'un an
Mis à jour par Paul Marillonnet il y a plus d'un an
- Statut changé de Solution proposée à Solution validée
Paul Marillonnet a écrit :
dans ce cas
else: new = d[key]
, aveci > 0
(qui si je comprends bien correspond à un parcours d’un élément composé à l’intérieur d’une liste), le parcours est tronqué et on s’arrête là dans la liste parente, non ?
Et donc le test_unflatten_array
nouvellement ajouté au patche répond à mes interrogations, parfait.
Aussi, sans doute avoir quelques tests générique à ce nouveau parseur, indépendamment de l’API de gestion des héritages entre rôles ?
Vu tes ajouts là-dessus, merci. Je découvre que ce code est déjà présent dans passerelle (passerelle.utils.json
). C’est bon pour moi.
Mis à jour par Benjamin Dauvergne il y a plus d'un an
- Statut changé de Solution validée à Résolu (à déployer)
commit 80c0e0fdd2aec2b37714c3f99570a3eb3eb0d54f Author: Benjamin Dauvergne <bdauvergne@entrouvert.com> Date: Tue Jun 28 21:04:00 2022 +0200 api: apply unflatten to input JSON (#66742) It should help dumb clients to make API calls.
Mis à jour par Transition automatique il y a plus d'un an
- Statut changé de Résolu (à déployer) à Solution déployée
api: apply unflatten to input JSON (#66742)
It should help dumb clients to make API calls.