Formulaires
Constructeur de formulaires, collecte des soumissions, notifications par courriel et trois façons d'afficher un formulaire.
@lrvo/module-forms ajoute un constructeur de formulaires à l'admin, une boîte de réception pour les soumissions, et un point de soumission public. Un formulaire se compose au glisser-déposer, sans code.

La palette range les types de champs par famille, et chaque champ posé porte sa largeur : pleine, demie ou tiers de ligne en écran large. L'URL publique s'affiche sous le titre, le formulaire y est servi dès qu'il est enregistré. Voir Champs pour le catalogue complet.
Pages de cette section
| Page | Contenu |
|---|---|
| Installation | Installer le module, créer les tables, vérifier les dépendances. |
| Configuration | Variables d'environnement, permissions, entrées d'admin. |
| Champs | Catalogue des types de champs et validation réellement appliquée. |
| Administration | Constructeur, liste des formulaires et boîte de réception. |
| Soumissions | Pipeline de soumission, anti-spam, fichiers, courriels. |
| Affichage | Les trois façons de rendre un formulaire sur le site. |
| Modèle de données | Tables lrvo_forms_form et lrvo_forms_submission. |
| API | Routes HTTP et fonctions serveur importables. |
Ce que le module apporte
| Élément | Détail |
|---|---|
| Tables | lrvo_forms_form et lrvo_forms_submission. |
| Entrées d'admin | Section « Formulaires », icône CheckListIcon, ordre 75, avec deux items. |
| Permissions | forms.view et forms.manage. |
| Routes API | 11 routes d'admin, 2 routes publiques. |
| Page publique | /lrvo/forms/<slug>, enregistrée dans core/public-pages. |
| Composants | FormEmbed et FormRenderer, exportés pour le site. |
Dépendances fonctionnelles
Le module n'a aucune dépendance de code au-delà du core, mais deux de ses fonctions reposent sur des services que le projet doit avoir configurés :
| Fonction | Dépend de |
|---|---|
| Toute soumission | NEXT_PUBLIC_URL, sans laquelle la vérification d'origine du core rejette la requête. |
| Courriels de notification et de confirmation | La configuration courriel du core, Resend ou SMTP. |
| Champs de type fichier | Le stockage objet du core. |
La première est la cause de panne la plus fréquente, et la moins visible : le formulaire s'affiche correctement et échoue à l'envoi. Voir Configuration.
Ce que le module ne fait pas
- Il n'enregistre pas de bloc BlockEditor. Le bloc
formappartient au start template, pas au module. Un projet qui n'a pas été généré par@lrvo/startdoit écrire le sien ou utiliser une autre voie d'affichage. Voir Affichage. - Il ne propose ni logique conditionnelle entre champs, ni étapes multiples, ni calculs.
- Il n'exporte pas les soumissions. Elles se consultent une par une dans l'admin.
Notes
- Le champ
versiondu manifeste du module vaut1.0.0et ne suit pas la version du package. Se fier àpackage.json. - Les soumissions ne sont jamais supprimées avec le formulaire par accident : supprimer un formulaire supprime bien ses soumissions par cascade, c'est explicite et irréversible.
- Le module ne pose aucune contrainte de vérification sur les valeurs de type
number,dateoutel. Voir Champs pour ce qui est réellement validé côté serveur.
