Projet

Général

Profil

Development #24094

Le préremplissage "Texte" pourrait accepter un gabarit

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
-
Version cible:
-
Début:
25 mai 2018
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:

Description

Pour le moment pour préremplir un champ à partir d'une autre info il faut passer par "Formule (Python)"; je me dis qu'on pourrait utiliser l'option "Texte" et y interpréter le texte comme un gabarit.

Il y a une différence fonctionnelle, "Texte", comme c'était un élément fixe, pas attaché à l'usager, il ne provoque pas l'affichage du message "ce champ a été prérempli". (Cela étant ils nous est régulièrement demander de cacher/réduire ce message.)


Fichiers


Demandes liées

Lié à w.c.s. - Development #23293: carte : préremplir depuis une adresseFermé19 avril 2018

Actions

Révisions associées

Révision a30fae2d (diff)
Ajouté par Frédéric Péters il y a presque 6 ans

general: add support for using templates to prefill fields (#24094)

Historique

#1

Mis à jour par Thomas Noël il y a presque 6 ans

Je préférerais qu'on ajoute un nouveau type de prefill "Gabarit", plus explicite sur ce qui est possible.

#2

Mis à jour par Frédéric Péters il y a presque 6 ans

#3

Mis à jour par Frédéric Péters il y a presque 6 ans

Ok.

#4

Mis à jour par Frédéric Péters il y a presque 6 ans

#5

Mis à jour par Pierre Cros il y a presque 6 ans

C'est trop tard mais pour plus tard : je suis jamais fan quand on ajoute dans l'interface un élément supplémentaire qui sera visible par 100% des users (et qui va donc complexifier leur compréhension de l'interface) et qui va être utilisé par moins de 5% d'entre eux.

#6

Mis à jour par Frédéric Péters il y a presque 6 ans

Il n'y a rien de trop tard ici. Cela étant, je pense vraiment maintenant qu'il est important d'être explicite dans ce qui est attendu, qu'il vaut mieux une sélection discrète pour dire "Gabarit" ou "Expression Python", plutôt que d'essayer de deviner ce que l'usager a pu vouloir dire; je viens d'ailleurs de le noter #19112 (concernant d'autres champs).

#7

Mis à jour par Pierre Cros il y a presque 6 ans

Les gens que je forme ils utilisent uniquement "champs utilisateurs" et "Géolocalisation", tout le reste obscurcit leur compréhension en réalité.

Je comprends l'utilité pour nous ou pour des informaticiens, pour les autres usagers c'est pas terrible.

#8

Mis à jour par Thomas Noël il y a presque 6 ans

Si j'ai bien suivi la piste que propose Frédéric c'est justement de nettoyer, supprimer les choix "Texte" et "Formule Python" qui sont plutôt cabalistiques ("Texte" étant quasi jamais utilisé, "Formule Python" ne l'étant que par des informaticiens). Et de remplacer par un seul choix "Expression", où l'utilisateur pourra indiquer qu'il veut poser un texte, un gabarit ou une formule Python, comme on le fait/fera ailleurs (affectation de valeur dans les workflows et autres endroits où se font des mini calculs). En formation : "c'est quand il faut remplir avec des trucs calculés, on en parle plus tard".

On aurait donc comme choix de preremplissage : Aucun / Champ utilisateur / Géoloc / Expression.

#9

Mis à jour par Pierre Cros il y a presque 6 ans

Alors vraiment désolé j'avais pas compris, c'est très bien.

#10

Mis à jour par Frédéric Péters il y a presque 6 ans

L'intention initiale était d'ajouter à l'option "texte" les possibilités de gabarit, là-dessus tu demandes plutôt un nouveau type explicite et c'est ce que le patch fait. (et je peux revenir là-dessus et réunir dans texte, bien sûr).

Retirer "Formule Python" est aujourd'hui compliqué vu le nombre d'utilisateurs.

#11

Mis à jour par Thomas Noël il y a presque 6 ans

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

L'intention initiale était d'ajouter à l'option "texte" les possibilités de gabarit, là-dessus tu demandes plutôt un nouveau type explicite et c'est ce que le patch fait. (et je peux revenir là-dessus et réunir dans texte, bien sûr).

Oui j'imaginais ce nouveau type, mais en lisant la remarque de Pierre, je me posais la question étant donné #19112 que tu citais, de regrouper Gabarit, Texte ou Python dans un seul type de pre-remplissage "Expression" ou "Calcul", nommage à trouver. Du moins au niveau de l'UI.

#12

Mis à jour par Frédéric Péters il y a presque 6 ans

On aurait ainsi un <select> avec le type de préremplissage (aucun, profil de l'usager, géoloc, expression), et sur choix "expression" l'<input> à côté serait un "nouvel input" (avec sélecteur engrenage) et le stockage se ferait sous forme $format$value ?

Et en lecture (plutôt qu'en phase de migration, ça me semble plus simple), on prendrait le préremplissage "texte" et mettrait ça sous forme d'expression django (en reprenant le texte tel quel et en misant sur le fait que jamais quelqu'un n'aura mis deux accolades dedans) et le préremplissage "formula" on le convertirait en $python$... ?

#13

Mis à jour par Thomas Noël il y a presque 6 ans

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

On aurait ainsi un <select> avec le type de préremplissage (aucun, profil de l'usager, géoloc, expression), et sur choix "expression" l'<input> à côté serait un "nouvel input" (avec sélecteur engrenage) et le stockage se ferait sous forme $format$value ?

Oui, du moins j'ai l'impression que ça serait clair ainsi. Que "texte" et "formule python" disparaissent ne me dérangent pas du tout.

Et en lecture (plutôt qu'en phase de migration, ça me semble plus simple), on prendrait le préremplissage "texte" et mettrait ça sous forme d'expression django (en reprenant le texte tel quel et en misant sur le fait que jamais quelqu'un n'aura mis deux accolades dedans) et le préremplissage "formula" on le convertirait en $python$... ?

Je pensais plutôt à un format $text$, toujours dans l'idée de ne mettre aucune magie derrière l'affaire. Avec un peu de ruse je me dis qu'une partie du code (à venir) de 19112 pourrait être réutilisé ici, ie pour les formats avoir $django$ $ezt$ $python$ et $text$.

#14

Mis à jour par Frédéric Péters il y a presque 6 ans

C'est plutôt compliqué de taper un "computed expression widget" dans une des options; du coup mon option ici serait de revenir à mon plan initial (presque), interpréter ce qui est mis dans un préremplissage texte comme pouvant être un gabarit. Sans rien dire si on veut.

#15

Mis à jour par Thomas Noël il y a presque 6 ans

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

C'est plutôt compliqué de taper un "computed expression widget" dans une des options; du coup mon option ici serait de revenir à mon plan initial (presque), interpréter ce qui est mis dans un préremplissage texte comme pouvant être un gabarit. Sans rien dire si on veut.

Je pense que le pre-remplissage via un texte n'est jamais utilisé, donc j'aurai tendance à dire ok. Est-ce qu'on renommerait quand même le choix "Gabarit", ou "Texte / Gabarit" ?

#16

Mis à jour par Frédéric Péters il y a presque 6 ans

Le remplissage "texte" est utilisé par endroit pour fournir une valeur par défaut à un champ (genre le nom de la ville dans un champ adresse).

Concernant le libellé de l'option, moi ça m'irait de garder ça caché et qu'il semble ne s'être rien passé (i.e. conserver "texte"); mais ça peut être autre chose, pas tellement attaché à ça.

#17

Mis à jour par Thomas Noël il y a presque 6 ans

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

Le remplissage "texte" est utilisé par endroit pour fournir une valeur par défaut à un champ (genre le nom de la ville dans un champ adresse).

Concernant le libellé de l'option, moi ça m'irait de garder ça caché et qu'il semble ne s'être rien passé (i.e. conserver "texte"); mais ça peut être autre chose, pas tellement attaché à ça.

Ok laissons simplement "texte". Mon idée avec "Texte / Gabarit" c'était d'afficher encore une fois le mot Gabarit pour que tout le monde finisse par le comprendre :)

#19

Mis à jour par Thomas Noël il y a presque 6 ans

Dans test_form_page_template_prefill, ajouter un test avec un template dont le calcul plante, genre {{form_var_user|inexistantfilter}}, vérifier que le prefill est alors bien vide.

Ack pour le reste, même si je reste un peu amer d'ajouter une fonctionnalité que je pense sympa de façon aussi planquée (les habitués vont continuer à utiliser le pré-remplissage Python alors que le but est aussi de le rendre inutile)

#20

Mis à jour par Frédéric Péters il y a presque 6 ans

  • Statut changé de En cours à Résolu (à déployer)

Bonne idée que ce test, suite à quoi j'ai ajouté un raises=True qui manquait.

Je pense qu'on aura l'occasion de mettre en avant la possibilité d'utiliser un gabarit quand l'UI du champ "préremplissage" sera revue.

commit a30fae2d11cbc55de2c54bb1030337ea681095c8
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat May 26 21:29:21 2018 +0200

    general: add support for using templates to prefill fields (#24094)
#21

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

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

Formats disponibles : Atom PDF