Projet

Général

Profil

Development #58475

URL de bienvenue/première connexion : avoir un sélecteur de page

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

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
08 novembre 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Plutôt qu'avoir à entrer une URL avoir un <select> listant les pages du site. + une option "autre" qui permet alors la saisie libre.


Fichiers

0001-public-add-page-selector-in-site-settings-58475.patch (10,5 ko) 0001-public-add-page-selector-in-site-settings-58475.patch Valentin Deniaud, 10 novembre 2021 16:59
1636559685.png (28,6 ko) 1636559685.png Valentin Deniaud, 10 novembre 2021 17:09
0001-public-add-page-selector-in-site-settings-58475.patch (12,4 ko) 0001-public-add-page-selector-in-site-settings-58475.patch Valentin Deniaud, 23 novembre 2021 14:22
1637663418.png (27,5 ko) 1637663418.png Valentin Deniaud, 23 novembre 2021 14:22

Révisions associées

Révision 17400f71 (diff)
Ajouté par Valentin Deniaud il y a environ 2 ans

public: add page selector in site settings (#58475)

Révision 28742112 (diff)
Ajouté par Frédéric Péters il y a environ 2 ans

misc: reorder migration (#58475)

Historique

#1

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

  • Assigné à mis à Valentin Deniaud
#2

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

#3

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

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

<select> listant les pages du site. + une option "autre" qui permet alors la saisie libre.

J'ai souvenir que c'est galère de tordre ModelChoiceField pour faire ça, si un tel truc est fait autre part je veux bien un pointeur et je ferais du copier coller avec joie (sinon je peux aussi inventer mais c'est moins garanti).

Pour l'instant j'ai opté pour remplacer le label « ------ » par cette option « autre », et du coup le code est simple. Par contre ça donne un fonctionnement un peu particulier, puisque c'est l'option sélectionnée par défaut.

(il faudra aussi penser à virer le « (chemin ou URL complète) » présent que dans les trads)

#4

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

et je ferais du copier coller avec joie (sinon je peux aussi inventer mais c'est moins garanti).

Je n'ai rien d'existant en tête mais il me semble que ça se gérerait assez facilement via le widget, plutôt que le field, un widget dans lequel il y aurait juste comme modif le changement du template, pour en avoir un qui serait select.html + une ligne "autre".

<select name="{{ widget.name }}"{% include "django/forms/widgets/attrs.html" %}>{% for group_name, group_choices, group_index in widget.optgroups %}{% if group_name %}
  <optgroup label="{{ group_name }}">{% endif %}{% for option in group_choices %}
  {% include option.template_name with widget=option %}{% endfor %}{% if group_name %}
  </optgroup>{% endif %}{% endfor %}
<!-- option supplémentaire : -->  <option value="" data-other="true">{% trans "Other:" %}</option>
</select>

Limite même pas besoin de classe particulière, l'attribut template_name doit pouvoir être changé dans l'init du form.

#5

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

  • Statut changé de Solution proposée à En cours
#6

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

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

<option value="" data-other="true">{% trans "Other:" %}</option>

La difficulté c'est de savoir quand avoir sélectionné le choix « ---- » et le choix « Other: » vu qu'ils ont tous les deux value="". Pas le choix que de remettre une couche de javascript.

#7

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

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

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

  • Statut changé de Solution validée à Résolu (à déployer)
commit 850e99ac9b7543805b93cb7f088e496b51fe5224
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Tue Nov 23 11:30:50 2021 +0100

    update translation

commit 17400f7110c84bf3b8a4671a0587c2c04eeefd14
Author: Valentin Deniaud <vdeniaud@entrouvert.com>
Date:   Wed Nov 10 15:21:57 2021 +0100

    public: add page selector in site settings (#58475)
#9

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

(build cassé, je m'occupe de renommer la migration)

#10

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

commit 287421122ff3d837046a2f179fbf32ea78c1b329
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Mon Jan 31 12:45:19 2022 +0100

    misc: reorder migration (#58475)
#11

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

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

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

Automatic expiration

Formats disponibles : Atom PDF