Refactoring User

Contexte : Permettre aux administrateurs de l’application d’accèder à la liste des utilisateurs.

Nos utilisateurs ne sont pas modifiable depuis l’application car c’est synchronisé avec un annuaire Azure AD.

Actuellement on a ajouté des champs sur l’objet User.

J’ai donc créé un objet qui hérite de SimpleUser et ça répond en grande partie au besoin.

2 Question découlent :

  • Comment afficher ces attributs dans notre Objet Final
  • Peut-on utiliser le template editor pour gerer l’affichage de cet objet et si oui de quelle manière? J’ai créé un template pour gérer l’affichage mais ça ne change rien. Je dois passer par le platform hooks pour cacher des champs mais pas possible de gerer la disposition.

Le bon pattern pour configurer un objet user “custom” c’est bien de paramétrer un objet qui hérite de SimpleUser.

Voici un exemple de user “simplifié” :

Il est paramétré en tant qu’hériter de SimpleUser et a un template spécifique:

Il n’y a à priori aucune raison d’écrire du code dans les platform hooks ou ailmleurs pour ce genre d’objets

C’est pas ce qui est indiqué dans le sujet epinglé par Simon

J’ai bien créé un template associé à mon objet mais il n’est pas pris en compte.

Le cas que j’ai décrit (qui est un cas de la vraie vie qui répond bien au besoin d’avoir un user très simplifié à usage des administrateurs métier) me semble correspondre à ce que décrit @Simon

SimpleUser contient les quelques attributs basiques du user (login, nom/prénom, email, …) dans la zone d’attributs 1, le reste est libre

NB: Si vous avez paramétré des choses spécifiques sur l’objet système User, SimpleUser ne le saura pas, en effet User hérite lui aussi de SimpleUser, pas l’inverse.

Ah, donc dans ce cas y’a encore un autre problème, il faut que je déplace nos variables vers SimpleUser donc ?

En attendant je vais voir si on a autre chose de paramétré sur User qui empêche l’utilisation de templates

Vous devez mettre au niveau de SimpleUser ce qui est utile à la fois dans le User système et dans votre user “simplifié”. Ca dépend donc de votre besoin en customisation du user.

Par contre je ne comprend pas ce que vous voulez dire par “empêche l’utilisation du template”, décrivez nous ce qui vous pose pb exactement.

Comme pour tout objet qui hérite d’un autre il n’est pas possible de modifier au niveau du fils ce qui est défini au niveau du père, c’est logique. SimpleUser comprend des attributs associés à une zone d’attribut SimpleUser-1 => celle ci n’est donc pas éditable via le template editor sur objet qui hérite de SimpleUser. C’est ça qui vous pose pb ?

En tout état de cause utiliser le template editor drag&drop n’est jamais obligatoire, c’est juste un outil visuel additionnel => vous pouvez toujours directement éditer manuellement le HTML des templates de formulaires et de vues et des zones d’attributs si besoin (c’est ce qu’il fallait faire avant l’arrivée du template editor visuel).

Je comprends mieux. Merci pour vos réponses.

This topic was automatically closed 60 minutes after the last reply. New replies are no longer allowed.