Projet

Général

Profil

Development #65882

dataviz, les sous-filtres ne sont pas correctement rafraîchis en cas d'utilisation d'une variable de page

Ajouté par Valentin Deniaud il y a presque 2 ans. Mis à jour il y a plus d'un an.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
01 juin 2022
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Le rafraîchissement des sous-filtres se fait par deux biais :
  • À la validation du formulaire, si on détecte qu'un champ lié à des sous-filtres a été modifié, on rafraichit
  • À chaque validation, on lance une tâche spooler qui va aller rafraichir les données et aussi les sous-filtres

Dans le premier cas les sous-filtres sont rafraîchis direct quand le formulaire est affiché, dans le second ça demande deux clics sur valider (validation 1 -> spooler -> formulaire affiché sans màj -> spooler fini -> validation 2 -> formulaire affiché avec màj). Rafraîchir les sous-filtres dans ce second cas est cependant moins utile, car il n'auront pas bougé à moins qu'un nouveau champ ait été coché « Statistiques ».

Sauf que, l'évaluation des variables de page nécessitant un objet requête, il désactive le rafraîchissement par spooler. Donc dans le cas où on utilise une variable de page + on va cocher un nouveau champ statistiques, il n'apparaîtra jamais (à moins d'aller changer le champ qui contrôle les sous-filtres).


Fichiers

Révisions associées

Révision 06b4b1dc (diff)
Ajouté par Valentin Deniaud il y a plus d'un an

dataviz: pass request explicitly when needed (#65882)

Révision 7a4bc2c0 (diff)
Ajouté par Valentin Deniaud il y a plus d'un an

dataviz: pass request to spooler refresh task (#65882)

Révision 2bfbfca2 (diff)
Ajouté par Valentin Deniaud il y a plus d'un an

dataviz: build filter parameters outside of spooler (#65882)

Historique

#1

Mis à jour par Valentin Deniaud il y a presque 2 ans

Valentin Deniaud a écrit :

Sauf que, l'évaluation des variables de page nécessitant un objet requête, il désactive le rafraîchissement par spooler.

Cette limitation n'a pas lieu d'être, on peut tout à fait passer la requête au spooler.
0001 pour réorganiser un peu le code et avoir un 0002 plus clair.

#2

Mis à jour par A. Berriot il y a plus d'un an

Les évolutions du code me paraissent okay, mais je n'ai pas l'impression que les changements liés au passage de requête au spooler ne sont pas testés, est-ce que c'est normal ?

#3

Mis à jour par Valentin Deniaud il y a plus d'un an

Agate Berriot a écrit :

Les évolutions du code me paraissent okay, mais je n'ai pas l'impression que les changements liés au passage de requête au spooler ne sont pas testés, est-ce que c'est normal ?

Oui c'est plutôt normal, à ma connaissance on a rien pour mocker la mécanique spooler :/

#4

Mis à jour par A. Berriot il y a plus d'un an

Valentin Deniaud a écrit :

Oui c'est plutôt normal, à ma connaissance on a rien pour mocker la mécanique spooler :/

C'est ce que je soupçonnais. Bon ben go alors :)

#5

Mis à jour par A. Berriot il y a plus d'un an

  • Statut changé de Solution proposée à Solution validée
#6

Mis à jour par Valentin Deniaud il y a plus d'un an

  • Statut changé de Solution validée à Résolu (à déployer)
commit 7a4bc2c02f530ee85823885817f5fa510acc2a3a
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Thu Jun 2 18:26:44 2022 +0200

    dataviz: pass request to spooler refresh task (#65882)

commit 06b4b1dce530a2f3dd6db4aaabcc597ad43cea11
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Thu Jun 2 18:20:00 2022 +0200

    dataviz: pass request explicitly when needed (#65882)
#7

Mis à jour par Transition automatique il y a plus d'un an

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

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

mais je n'ai pas l'impression que les changements liés au passage de requête au spooler ne sont pas testés, est-ce que c'est normal ?

Oui c'est plutôt normal, à ma connaissance on a rien pour mocker la mécanique spooler :/

Résultat ça plante → #67902 qui va reverter ces patchs.

#9

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

  • Statut changé de Solution déployée à En cours
  • Patch proposed changé de Oui à Non
#10

Mis à jour par Valentin Deniaud il y a plus d'un an

Plutôt que de passer la requête, passer la query string.

Cette fois-ci testé en lançant combo avec uwsgi :

COMBO_SETTINGS_FILE=/home/$USER/.config/publik/settings/combo/settings.py uwsgi --chdir . --module=combo.wsgi:application --env DJANGO_SETTINGS_MODULE=combo.settings --master --process 3 --pidfile=/tmp/project-master.pid --http=127.0.0.1:8004 --spooler-python-import=combo.utils.spooler --spooler /var/lib/combo/spooler/

#11

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

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

validé/poussé,

commit 2bfbfca2de76e1e95f4214f735f0331b07fca218
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Tue Aug 23 15:37:25 2022 +0200

    dataviz: build filter parameters outside of spooler (#65882)
#12

Mis à jour par Transition automatique il y a plus d'un an

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

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF