Projet

Général

Profil

Development #57955

tableau affichant les membres "directs" d'un rôle

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
Catégorie:
-
Version cible:
-
Début:
18 octobre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Je trouverais pratique là sur un rôle de voir qu'il "contient" :

  • les membres du groupe A
  • + monsieur machin

Aujourd'hui le tableau liste tous les usagers et je passe trop facilement à côté de monsieur machin qui est perdu au milieu.


Fichiers


Demandes liées

Lié à Authentic 2 - Development #59664: Accorde ses propres permissions aux rôles : migré vers menu burgerFermé14 décembre 2021

Actions

Révisions associées

Révision eabdce19 (diff)
Ajouté par Valentin Deniaud il y a plus de 2 ans

misc: add get_absolute_url method to Role and User (#57955)

Révision 7b6e7461 (diff)
Ajouté par Valentin Deniaud il y a plus de 2 ans

tables: simplify PermissionLinkColumn (#57955)

Révision ab22f2fd (diff)
Ajouté par Valentin Deniaud il y a plus de 2 ans

manager: include roles along with users in role members table (#57955)

Révision 20dd0adf (diff)
Ajouté par Valentin Deniaud il y a plus de 2 ans

manager: remove children table from role members page (#57955)

Historique

#1

Mis à jour par Valentin Deniaud il y a plus de 2 ans

On pourrait permettre de trier le tableau selon la colonne « direct », est-ce que ça conviendrait ?

#2

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Je pense que oui, mais il faudrait conserver un tri alphabétique dans ce cas, en second critère.

#3

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

Je ne l'écrivais pas mais ma proposition dans ce ticket ouvrait pour aller plus loin : ça offrait une voie d'évolution compréhensible par rapport aux tableaux "Contient les permissions des rôles" et "Accorde ses propres permissions aux rôles", permettant de supprimer l'un des deux (je n'arrive pas à dire lequel avec juste les libellés), dont l'info serait intégrée dans le tableau principal.

#4

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Frédéric Péters a écrit :

permettant de supprimer l'un des deux

Mais il y a déjà eu #56638 il y a deux mois, personne n'était d'accord pour faire ça. Si il y a une nouvelle proposition à ajouter au débat, pourquoi pas rouvrir un ticket explicite/faire un mockup/en parler à l'EO camp. En tout cas je doute que ça ait une chance de se régler ici.

#5

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

Ce ticket est ma demande de la possibilité d'avoir dans le "tableau principal" de la page d'un rôle la liste des "membres directs", utilisateurs ou rôles.

L'effet de bord "virer un des tableaux en bas", j'imaginais qu'on pouvait s'en rendre compte plus tard. ("tiens cette vue combinée est bien pratique, le tableau dessous devient totalement inutile, on pourrait le retirer").

Puisque tu cites l'autre ticket, ça rejoint en fait ce passage : « Mais le côté informatif apporté par "Contient les membres des rôles" reste important et ne devrait pas disparaître je trouve. Ce serait donc peut-être juste ne plus le rendre éditable. » (#56638#note-8).

#6

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Frédéric Péters a écrit :

la liste des "membres directs", utilisateurs ou rôles.

OK je viens de comprendre que le « * les membres du groupe A » de la description n'était pas un raccourci pour dire la liste des membres du groupe mais bien littéralement une info à afficher dans le tableau, précisément en ne montrant plus ces membres.

Gros changement je trouve, on est sûr que personne n'a utilité de cette liste exhaustive des comptes qui ont un rôle donné ?

#7

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

on est sûr que personne n'a utilité de cette liste exhaustive des comptes qui ont un rôle donné ?

Note que pour moi ça n'empêchait pas de garder la possibilité d'un affichage extensif, des membres (voires rôles) indirects, (comme on a une case "Afficher les rôles internes" sur l'écran des rôles, peut-être).

#8

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Je comprends mieux aussi ce que tu souhaites :
1. afficher en première intention dans le même tableau les rôles fils et utilisateurs directs
2. avoir une case à cocher "Afficher les membres indirects" qui déplie tout ça, rôles et utilisateurs indirects (et là c'est un poil chiant de trouver le bon ordre entre les rôles indirects et leurs membres, je dirai de ne pas chercher et de rester sur de l'alphabétique)

Ça m'irait bien, le requêtage sera un poil plus chiant à pondre mais ça me semble possible, on ne peut pas utiliser l'ORM simplement vu qu'on mélange deux modèles différents, à tester mais on doit pouvoir utiliser des unions de QuerySet.values() comme queryset passé à django-table avec les alias pour que les colonnes s'appellent pareil.

Ça me parait assez différent de #56638 qui proposait purement et simplement de faire disparaître une information, là on ne fait que changer sa présentation.

Niveau IHM ça demandera pas mal d'autres changements :
  • il faudra une façon de différencier les rôles des utilisateurs du premier coup d'oeuil (un picto ou une couleur enfin il faut facilement faire la différence),
  • on ne pourra plus présenter username,email,nom,prénom, il faut un seul intitulé pour un utilisateur et un rôle, à la rigueur on peut proposer d'afficher l'un ou l'autre dans la barre de droite (par email, par username, par display_name),
  • je suppose qu'il faut penser ça dans une refonte de l'action "Ajouter un membre" qui dans un même élan devrait pouvoir traiter les rôles et les usagers.
#9

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Assigné à mis à Valentin Deniaud

Aller ça promet d'être golri

#11

Mis à jour par Valentin Deniaud il y a plus de 2 ans

Voilà implémentation aussi simple que possible, je reprends le plan de Benj pour souligner ce qui est là et ce qui diffère.

Benjamin Dauvergne a écrit :

1. afficher en première intention dans le même tableau les rôles fils et utilisateurs directs

Fait. C'est l'affichage par défaut si un rôle a des rôles fils, mais si il n'en a pas on ne fait qu'afficher l'ancien tableau (c'est mieux à l'usage et aussi ça permet de ne pas avoir à toucher à la plupart des tests).

2. avoir une case à cocher "Afficher les membres indirects" qui déplie tout ça, rôles et utilisateurs indirects (et là c'est un poil chiant de trouver le bon ordre entre les rôles indirects et leurs membres, je dirai de ne pas chercher et de rester sur de l'alphabétique)

Ça avait effectivement l'air compliqué, je me contente d'avoir une case « afficher tous les membres » (tous les labels sont à discuter bien sûr) et ça affiche l'ancien tableau.

Ça m'irait bien, le requêtage sera un poil plus chiant à pondre mais ça me semble possible, on ne peut pas utiliser l'ORM simplement vu qu'on mélange deux modèles différents, à tester mais on doit pouvoir utiliser des unions de QuerySet.values() comme queryset passé à django-table avec les alias pour que les colonnes s'appellent pareil.

J'ai testé vite fait et j'ai pas l'impression qu'on puisse faire ce que tu dis dans un queryset, vraiment pas grave je sors une liste et puis voilà.

  • il faudra une façon de différencier les rôles des utilisateurs du premier coup d'oeuil (un picto ou une couleur enfin il faut facilement faire la différence),

Je préfère un texte explicite pour différencier les rôles, je pense que c'est ce que Fred suggérait et je trouve ça clair.

  • on ne pourra plus présenter username,email,nom,prénom, il faut un seul intitulé pour un utilisateur et un rôle, à la rigueur on peut proposer d'afficher l'un ou l'autre dans la barre de droite (par email, par username, par display_name),

Pas trop compris ce point, à voir si il est toujours pertinent une fois ma proposition en tête.

  • je suppose qu'il faut penser ça dans une refonte de l'action "Ajouter un membre" qui dans un même élan devrait pouvoir traiter les rôles et les usagers.

Option simple encore une fois, pas touche à cette action et à la place je déplace l'action pour ajouter un rôle comme membre dans le menu kebab, il me semble que c'est assez cohérent avec les discussions de #56638.

#12

Mis à jour par Valentin Deniaud il y a plus de 2 ans

(rebasé)

#13

Mis à jour par Paul Marillonnet il y a plus de 2 ans

Dans l’idée, nickel, mais je ne sais pas si ça fera l’unanimité du côté des CPF. On va voir :)
Du détail, mais je comprends pas pourquoi 0003 et 0004 ne sont pas un seul commit. C’est une substitution des membres indirects par leur rôle d’appartenance, alors je pense que ça aurait été plus lisible de tout regrouper, mais bon vraiment du pinaillage de ma part :)

Attention juste une petite remarque de forme, depuis #58695 il n’est plus question de get_role_model, get_user_model etc dans le code. J’en vois au moins un dans 0003 mais peut-être aussi ailleurs, à vérifier.

#14

Mis à jour par Paul Marillonnet il y a plus de 2 ans

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

Et donc j’oubliais le plus important : ack.

#15

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

(un peu tard) Ça me va aussi (vu les screenshots et le com). On verra bien la réaction des gens au changement; je ne pense pas que quelqu'un aura un souci, c'est juste plus clair.

#16

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 20dd0adf8af59cb24b48a0917e3a1c2894db2a4f
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Wed Nov 3 12:45:24 2021 +0100

    manager: remove children table from role members page (#57955)

commit ab22f2fd82a2663f81605120407a6fd7e0bfee69
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Wed Nov 3 11:11:38 2021 +0100

    manager: include roles along with users in role members table (#57955)

commit 7b6e7461931c5d8182c41144ea2c3f0767c81340
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Wed Nov 3 11:11:02 2021 +0100

    tables: simplify PermissionLinkColumn (#57955)

commit eabdce19efeba002146b199b5ea1a89bc8f4f857
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Tue Nov 2 16:17:12 2021 +0100

    misc: add get_absolute_url method to Role and User (#57955)
#17

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

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

Mis à jour par Valentin Deniaud il y a plus de 2 ans

  • Lié à Development #59664: Accorde ses propres permissions aux rôles : migré vers menu burger ajouté
#19

Mis à jour par Transition automatique il y a environ 2 ans

Automatic expiration

Formats disponibles : Atom PDF