Bug #60989
KeyError: 'type'
0%
Description
https://sentry.entrouvert.org/entrouvert/nfrance/issues/54347/
KeyError: 'type' File "passerelle/utils/jsonresponse.py", line 130, in api resp = f(*args, **kwargs) File "passerelle/views.py", line 531, in perform result = self.endpoint(request, **params) File "contextlib.py", line 74, in inner return func(*args, **kwds) File "passerelle/contrib/toulouse_smart/models.py", line 178, in create_intervention data[prop['name']] = cast[prop['type']](block[name]) Error occurred while processing request
Fichiers
Révisions associées
Historique
Mis à jour par Lauréline Guérin il y a environ 2 ans
- Projet changé de Suivi des traces à Passerelle
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
Les deux dernière propriétés n'ont pas de type, bug SMART à remonter.
{id: '24b1581b-bba8-4dc8-a331-0e92451feda4', name: 'Intervenir sur un mobilier', order: 69, properties: [{displayName: "Type d'intervention", name: 'TYPE_INTERVENTION', required: True, restrictedValues: ["'Déplacer'","'Déposer'","'Installer'","'Réparer'","'Réviser'"], type: 'item'}, {displayName: 'Temporaire ?', name: 'TEMPORAIRE', required: True, type: 'boolean'}, {displayName: 'Date de dépose', name: 'DATE_DEPOSE', required: True}, {displayName: 'Date de remise en place', name: 'DA...}]}
Mis à jour par Nicolas Roche il y a environ 2 ans
- Fichier 0002-toulouse_smart-do-not-crash-on-unmanaged-property-ty.patch 0002-toulouse_smart-do-not-crash-on-unmanaged-property-ty.patch ajouté
- Fichier 0001-toulouse_smart-do-not-crash-on-unknown-property-type.patch 0001-toulouse_smart-do-not-crash-on-unknown-property-type.patch ajouté
- Statut changé de Nouveau à Solution proposée
- Patch proposed changé de Non à Oui
0001: pour ne pas cracher quand le type d'une propriété n'est pas défini.
0002: prévoit le cas où le type n'est pas traité dans le connecteur.
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
Je te propose de plutôt ignorer tous ces champs tant qu'ils n'ont pas de type; jusqu'à qu'on en sache plus, il faut le faire à la source quand on les listes, comme ça corrigera aussi l'export des blocs.
0001: typo "unknwon"
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
- Statut changé de Solution proposée à En cours
Mis à jour par Nicolas Roche il y a environ 2 ans
- Fichier 0002-toulouse_smart-do-not-crash-on-unknown-property-type.patch 0002-toulouse_smart-do-not-crash-on-unknown-property-type.patch ajouté
- Fichier 0001-toulouse_smart-ignore-not-typed-smart-properties-609.patch 0001-toulouse_smart-ignore-not-typed-smart-properties-609.patch ajouté
- Statut changé de En cours à Solution proposée
ignorer tous ces champs tant qu'ils n'ont pas de type
0001 revu dans ce sens.
Ça ressemble à des dates d'intervention/de prêts, i.e. des trucs qui seront posés via le backoffice de SMART pas du tout via la création d'une demande d'intervention depuis Publik
Pas convaincu, ces champs sont passés dans le payload d'après la trace sentry.
block: { date_depose: '01/01/2022', date_remise_en_place: '01/01/2022',
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
Nicolas Roche a écrit :
ignorer tous ces champs tant qu'ils n'ont pas de type
0001 revu dans ce sens.
Ça ressemble à des dates d'intervention/de prêts, i.e. des trucs qui seront posés via le backoffice de SMART pas du tout via la création d'une demande d'intervention depuis Publik
Pas convaincu, ces champs sont passés dans le payload d'après la trace sentry.
[...]
Mais y a vraiment des gens qui font des vrais tests ou ils remplissent tous les champs sans savoir pourquoi ? :) J'ai du mal à voir comment un agent qui remplit une première demande peut déterminer la "date de remise en place".
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
- Statut changé de Solution proposée à Information nécessaire
0002: je ne comprends pas comment on peut tomber sur cette APIError vu qu'on ignore ces propriétés au patch d'avant.
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
Benjamin Dauvergne a écrit :
0002: je ne comprends pas comment on peut tomber sur cette APIError vu qu'on ignore ces propriétés au patch d'avant.
Ok compris le deuxième patch c'est pour les types inconnus; il ne me semble pas qu'on ait eu ce problème, mais je dirai de faire pareil, on ignore dans 0001.
Mis à jour par Nicolas Roche il y a environ 2 ans
- Fichier 0001-toulouse_smart-ignore-smart-properties-having-unknow.patch 0001-toulouse_smart-ignore-smart-properties-having-unknow.patch ajouté
- Statut changé de Information nécessaire à Solution proposée
on ignore dans 0001
Oui, ça simplifie.
Mis à jour par Benjamin Dauvergne il y a environ 2 ans
- Statut changé de Solution proposée à Solution validée
Go.
Mis à jour par Nicolas Roche il y a environ 2 ans
- Statut changé de Solution validée à Résolu (à déployer)
commit 47b07f9a7cd8079a91b45edda8a1fb797445b3ab Author: Nicolas ROCHE <nroche@entrouvert.com> Date: Wed Jan 26 16:54:58 2022 +0100 toulouse_smart: ignore smart properties having unknown type (#60989)
Mis à jour par Frédéric Péters il y a environ 2 ans
- Statut changé de Résolu (à déployer) à Solution déployée
toulouse_smart: ignore smart properties having unknown type (#60989)