Projet

Général

Profil

Development #22979

utiliser les serialiseurs fournis par Django Rest Framework

Ajouté par Thomas Noël il y a environ 6 ans. Mis à jour il y a plus de 5 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
04 avril 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

parce que c'est gratuit.


Fichiers


Demandes liées

Lié à Chrono - Bug #21436: Améliorer l'utilisation de drf dans ChronoFermé26 janvier 2018

Actions

Révisions associées

Révision 87f8cbff (diff)
Ajouté par Thomas Noël il y a environ 6 ans

api: use rest_framework serializers (#22979)

Historique

#1

Mis à jour par Frédéric Péters il y a environ 6 ans

  • Lié à Bug #21436: Améliorer l'utilisation de drf dans Chrono ajouté
#2

Mis à jour par Thomas Noël il y a environ 6 ans

Voilà.

A noter:
  • on n'a jamais utilisé que APIView, jamais GenericAPIView (on gère pas directement des objets dans nos APIs)
  • les contraintes deviennent plus fortes, ça renvoie du 400 en cas de soucis, il n'y a plus de silence quand on envoie n'importe quoi lors d'un booking
  • les extra_data ne sont plus que les données "en plus", ie tout ce qui n'a pas été sérialisé
  • en cas de multiresa, les booking fils contiennent aussi les données label, user_name, backoffice_url et pas seulement les extra_data

A mon avis rien qui ne soit anormal, du moins si ces changements provoquent des soucis c'est qu'à mon avis on faisait un peu n'imp avant.

#3

Mis à jour par Frédéric Péters il y a environ 6 ans

Ce n'est pas encore assez pour aider le swagger django rest framework à produire quelque chose de vraiment intéressant mais tant pis, et j'ai l'impression que c'est quand même un pas dans cette direction, pour moi ok.

#4

Mis à jour par Thomas Noël il y a environ 6 ans

Est-ce que ça aide si on laisse croire que Fillslot est une API sur un modèle sérialisé ?

ie laisser ça :

class Fillslot(GenericAPIView):
    serializer_class = SlotSerializer
    ...
#5

Mis à jour par Frédéric Péters il y a environ 6 ans

Non ça ne change rien, il doit encore manquer un truc pour que django rest framework comprenne. (pas bien grave, on trouvera)

#6

Mis à jour par Thomas Noël il y a environ 6 ans

  • Statut changé de En cours à Résolu (à déployer)
commit 87f8cbff156a2fc11416bad7f52012477b0e91ee
Author: Thomas NOEL <tnoel@entrouvert.com>
Date:   Wed Apr 4 16:07:00 2018 +0200

    api: use rest_framework serializers (#22979)

#7

Mis à jour par Benjamin Dauvergne il y a environ 6 ans

Je ne sais pas ce que vous voulez qu'il comprenne mais la génération des schémas n'est pas automatique il me semble, http://www.django-rest-framework.org/api-guide/schemas/#the-get_schema_view-shortcut

#8

Mis à jour par Frédéric Péters il y a environ 6 ans

Dans combo.apps.notifications on a une GenericAPIView et une serializer_class et celle-ci est bien utilisée pour alimenter l'UI du swagger (cf capture). (à poursuivre ailleurs)

#9

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