Projet

Général

Profil

Bug #16448

L'endpoint /api/agenda/ reprend une URL /datetimes/ invalide pour les rendez-vous de type "réunion"

Ajouté par Frédéric Péters il y a presque 7 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Catégorie:
-
Version cible:
-
Début:
22 mai 2017
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

            "api": {
                "datetimes_url": "https://.../api/agenda/rendez-vous-avec-le-maire/datetimes/" 
            },

Alors qu'il y a une URL par type de rendez-vous, et que la forme serait https://.../api/agenda/rendez-vous-avec-le-maire/meetings/type-de-rendez-vous/datetimes/.


Fichiers

Révisions associées

Révision 678b297a (diff)
Ajouté par Frédéric Péters il y a presque 7 ans

api: include meeting types endpoints in /agenda/ API (#16448)

Historique

#1

Mis à jour par Frédéric Péters il y a presque 7 ans

#2

Mis à jour par Thomas Noël il y a presque 7 ans

Sans savoir si c'est très utile, je proposerai bien de renvoyer le "kind" dans l'api. (ajouter un 'kind': agenda.kind, après la ligne 42)

(et rien à voir avec ce patch, mais j'ai l'impression que les éléments «agenda_identifier=None, format=None» sont en trop dans la définition de la méthode get)

Ensuite, ne sachant pas d'où vient ce soucis, je proposerai une relecture par celui qui a remonté le problème (Josué ?).

#3

Mis à jour par Frédéric Péters il y a presque 7 ans

Sans savoir si c'est très utile, je proposerai bien de renvoyer le "kind" dans l'api. (ajouter un 'kind': agenda.kind, après la ligne 42)

Yes, fait.

(et rien à voir avec ce patch, mais j'ai l'impression que les éléments «agenda_identifier=None, format=None» sont en trop dans la définition de la méthode get)

J'ai retiré le agenda_identifier=None; pour le format=None, c'est présent partout et ça sort de django-rest-framework, sans doute par erreur, ce serait pour un autre ticket qui nettoierait tout.

Ensuite, ne sachant pas d'où vient ce soucis, je proposerai une relecture par celui qui a remonté le problème (Josué ?).

Non, j'ai découvert le bug tout seul.

#4

Mis à jour par Thomas Noël il y a presque 7 ans

allez, pour la route, encore un truc un peu inutile, mais autant le faire maintenant : au niveau des meetings, ajouter un « agenda_data['api'] » vers "api-agenda-meetings" (ajouté dans #13360) ?

Genre

      elif agenda.kind == 'meetings':
          agenda_data['api'] = {
              'meetings_url': request.build_absolute_uri(
                  reverse('api-agenda-meetings',
                      kwargs={'agenda_identifier': agenda.slug}))
          }

Avec ou sans cette frioriture, c'est un "ack".

#5

Mis à jour par Frédéric Péters il y a presque 7 ans

allez, pour la route, encore un truc un peu inutile, mais autant le faire maintenant : au niveau des meetings, ajouter un « agenda_data['api'] » vers "api-agenda-meetings" (ajouté dans #13360) ?

En fait, ça me fait penser que j'ai fait les choses à l'envers et ce patch, ça pourrait être uniquement ça, avoir 'api': {'meetings_url': ...} pour les calendriers de ce type, plutôt que le datetimes_url invalide; et libre à l'appelant d'utiliser cette URL pour récupérer la liste des types de rendez-vous, plutôt qu'essayer de tout caler dans cet endpoint.

#6

Mis à jour par Thomas Noël il y a presque 7 ans

Ack

#7

Mis à jour par Frédéric Péters il y a presque 7 ans

  • Statut changé de En cours à Résolu (à déployer)
commit 678b297adffd695f476f2f3ace662579772306c3
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat Jun 10 15:52:40 2017 +0200

    api: include meeting types endpoints in /agenda/ API (#16448)
#8

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

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

Formats disponibles : Atom PDF