Projet

Général

Profil

Bug #56981

self.pages[page_no] -> IndexError: list index out of range

Ajouté par Sentry Io il y a plus de 2 ans. Mis à jour il y a plus d'un an.

Statut:
Nouveau
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
16 septembre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Non
Planning:
Non

Description

https://sentry.entrouvert.org/entrouvert/publik/issues/52079/

IndexError: list index out of range
(7 additional frame(s) were not displayed)
...
  File "quixote/directory.py", line 88, in _q_traverse
    return obj._q_traverse(path)
  File "quixote/directory.py", line 88, in _q_traverse
    return obj._q_traverse(path)
  File "quixote/directory.py", line 92, in _q_traverse
    return obj()
  File "wcs/backoffice/submission.py", line 148, in _q_index
    return super()._q_index(*args, **kwargs)
  File "wcs/forms/root.py", line 1181, in _q_index
    return self.page(self.pages[page_no])

Historique

#1

Mis à jour par Lauréline Guérin il y a plus de 2 ans

  • Projet changé de Suivi des traces à w.c.s.
#2

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

  • Sujet changé de IndexError: list index out of range à self.pages[page_no] -> IndexError: list index out of range
#4

Mis à jour par Lauréline Guérin il y a plus de 2 ans

  • Assigné à mis à Lauréline Guérin
#5

Mis à jour par Lauréline Guérin il y a plus de 2 ans

Je n'arrive pas à écrire un test qui reproduise le soucis.

A priori, il s'agit de formulaires ne contenant que des pages à affichage conditionnel.
Les data postées lors de l'étape qui foire sont incomplètes: le champ qui sert à déterminer l'affichage de la page que le user a submit, est vide.
(mais ce champ ne l'était pas avant, puisque le user a réussi à arriver sur cette page).
Du coup le calcul et l'envoi sur la page suivante échoue; self.pages ne contient presque plus rien.

On pourrait juste mettre un try/except autour de return self.page(self.pages[page_no]) l1181, et renvoyer sur la première page en cas d'erreur ?

#6

Mis à jour par Lauréline Guérin il y a plus de 2 ans

  • Assigné à Lauréline Guérin supprimé
#7

Mis à jour par Frédéric Péters il y a plus d'un an

Sur un cas que je viens de regarder il s'agit d'une saisie backoffice, avec une démarche avec une seule page avec form_user en condition de page; a priori pour forcer la saisie depuis un lien du portail agent qui précise l'usager concerné.

(mais quand j'y regarde le log HTTP j'ai l'impression que le parcours est bien suivi, qu'on est bien lancé depuis le portail agent).

Formats disponibles : Atom PDF