Development #31491
tableur : fournir un filtre ?id= automatique aux requêtes
0%
Description
Après avoir obtenu un identifiant de ligne (genre via un champ select2), avoir à coup sûr une requête permettant d'obtenir le détail de la ligne à partir de cet identifiant.
Fichiers
Demandes liées
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a environ 5 ans
- Fichier 0001-csvdatasource-provide-a-id-filter-to-queries-31491.patch 0001-csvdatasource-provide-a-id-filter-to-queries-31491.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
Implémentation simple et naïve, ça pourra être optimisé aprè #31490.
Mis à jour par Frédéric Péters il y a environ 5 ans
- Lié à Development #31492: évolution de la source de données JSON pour y permettre du select2 ajouté
Mis à jour par Benjamin Dauvergne il y a environ 5 ans
Est-ce que ça n'irait pas plutôt dans la vue /data
classique ? Je dis ça parce que reste le problème du format en sortie {err:0, data: [row]}
qui dépend de la configuration de la Query, plutôt que {err:0, data: row}
plus classique dans le cas de la récupération d'une seule ligne.
Aussi j'ai peur que cela interagisse mal avec les requêtes contenant un filtre explicite utilisant une paramètre de query string id
du genre code_rue == query['id']
.
Mis à jour par Frédéric Péters il y a environ 5 ans
Est-ce que ça n'irait pas plutôt dans la vue /data classique ? Je dis ça parce que reste le problème du format en sortie {err:0, data: [row]} qui dépend de la configuration de la Query [...]
Sauf que pour fonctionner en source de données w.c.s. il n'y a de toute façon pas de marge sur la configuration de la requête.
Aussi j'ai peur que cela interagisse mal avec les requêtes contenant un filtre explicite utilisant une paramètre de query string id du genre code_rue == query['id'].
J'ai oublié de le noter mais je suis passé sur les requêtes définies en prod et ça n'arrive pas.
Mis à jour par Benjamin Dauvergne il y a environ 5 ans
- Statut changé de Solution proposée à Solution validée
- Assigné à mis à Frédéric Péters
Frédéric Péters a écrit :
Est-ce que ça n'irait pas plutôt dans la vue /data classique ? Je dis ça parce que reste le problème du format en sortie {err:0, data: [row]} qui dépend de la configuration de la Query [...]
Sauf que pour fonctionner en source de données w.c.s. il n'y a de toute façon pas de marge sur la configuration de la requête.
De toute façon ça n'a pas de lien avec l'utilisation par Select2 c'est pour être utilisé après que Select2 ait rapporté un id stocké dans un form_var_xx_raw, que ce soit définir directement sur les query ou sur /data n'y changera rien.
Aussi j'ai peur que cela interagisse mal avec les requêtes contenant un filtre explicite utilisant une paramètre de query string id du genre code_rue == query['id'].
J'ai oublié de le noter mais je suis passé sur les requêtes définies en prod et ça n'arrive pas.
Ce n'est pas entièrement satisfaisant comme réponse, ça reste possible et les gens auront à choisir entre renommer une colonne en id
via les projections ou filtrer et je ne sais pas ce qu'ils vont faire si rien ne les empêche.
Étant un peu perdu je suis allé vérifier sur Chateauroux où je me souviens d'un cas d'usage typique (un seul CSV avec des arrêts, des lignes et des villes), typiquement le genre de truc dont on extrait plusieurs référentiel, et c'est vrai id n'y est pas pas mappé mais simplement parce que les requêtes sont mal faites, l'id des arrêts est réutilisé pour les villes et les lignes (ça ne marche que si l'ordre des lignes du CSV ne change jamais sinon les id
vont varier): exemple de requête https://passerelle-chateauroux.test.entrouvert.org/manage/csvdatasource/transports-complet/queries/2/ ici on devrait remapper ville
sur id
; sauf qu'ensuite lors du filtrage des arrêt ou des lignes je suppose qu'on utilise la valeur naturelle et pas la valeur _raw
qui ne sert juste à rien.
Mais donc c'est ok vu que tu te places juste après les projections, il faudra donc conseiller aux gens de toujours bien mapper leur clé naturelle sur l'identifiant id
.
Mis à jour par Frédéric Péters il y a presque 5 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit dc80587d5c6d37bad808d8c8e0a70cd80253edd1 Author: Frédéric Péters <fpeters@entrouvert.com> Date: Sun Mar 17 09:27:33 2019 +0100 csvdatasource: provide a ?id= filter to queries (#31491)
Mis à jour par Frédéric Péters il y a presque 5 ans
- Statut changé de Résolu (à déployer) à Solution déployée
Mis à jour par Benjamin Dauvergne il y a presque 5 ans
- Statut changé de Solution déployée à Fermé
csvdatasource: provide a ?id= filter to queries (#31491)