Multi-pages

Dans bien des situations il est nécessaire de structurer un formulaire en plusieurs pages, pour ce faire un type de champ spécial existe, il s’agit de « Page ». Il permet de définir un titre aux pages, qui sera affiché à l’usager dans l’indicateur de progression.

Pour créer un formulaire multi-pages, il est important que toutes les pages soient nommées, cela implique particulièrement que le formulaire doit absolument commencer par un champ de ce type, que les premiers champs ne se trouvent pas à flotter en-dehors de la structure de pages.

Afin de rappeler l’importance de la définition d’une page comme premier élément de formulaire, un message d’information est affiché en haut de la définition des champs quand ce n’est pas le cas.

Pages conditionnelles

Dans certaines situations toutes les pages d’un formulaire n’ont pas à être présentées dans toutes les situations, inutile par exemple de présenter une page précisant les modalités d’accès à un parking si l’usager a noté dans une page précédente qu’il viendrait en tant que piéton.

Pour répondre à ce besoin, en plus du libellé de la page, les champs de type « Page » disposent d’une option permettant d’en conditionner l’affichage.

Une condition s’exprime sous forme d’une expression Python, qui peut faire référence à des informations concernant le formulaire en cours de remplissage mais aussi à l’usager occupé à le remplir.

Pour partir sur la situation du premier paragraphe, le champ « mode de transport » pourrait avoir comme nom de variable associé mode_de_transport, la page sur l’accès au parking ne devrait pas être affichée pour les personnes ayant précisés qu’elles venaient à pieds, le champ serait complété avec l’expression suivante : form_var_mode_de_transport != "Piéton" (où le != correspond à la syntaxe Python signifiant « différent de »).

D’autres exemples de condition sont présentés dans la page Exemples de conditions.