Première application pas à pas
Cette page part d'une installation vide pour aboutir à une application opérationnelle — une entrée du menu latéral qui ouvre une grille sur une table, avec un dialogue de modification. Tout se fait depuis les Paramètres (superutilisateur), sans aucune modification manuelle de fichier.
Quatre éléments, dans l'ordre — pool → connecteur → écran → menu — chacun enregistré et appliqué aussitôt.
Vue d'ensemble
L'exemple utilise le pool default et une petite table tasks.
Étape 1 — Le pool
Ouvrir Liberty Next → Administrer → Pools. L'installation a créé le pool default : sur une installation Docker, il pointe vers la base PostgreSQL fournie ; sur une installation Python sans PostgreSQL, vers un fichier SQLite local. Il suffit pour ce parcours. Pour travailler sur une autre base, ajouter un pool avec son URL — voir Connecteurs.
Créer la table d'exemple avec n'importe quel client SQL connecté à cette base :
CREATE TABLE tasks (
id INTEGER PRIMARY KEY,
title VARCHAR(200) NOT NULL,
status VARCHAR(10) NOT NULL DEFAULT 'open',
due_date DATE
);
INSERT INTO tasks (id, title, status, due_date) VALUES
(1, 'Préparer le plan de sprint', 'open', '2026-06-10'),
(2, 'Relire la pull request 42', 'done', '2026-06-05'),
(3, 'Relancer le client', 'open', '2026-06-12');
Étape 2 — Le connecteur et ses requêtes
- Liberty Next → Construire → Connecteurs → + Connecteur : nom
tasks, type SQL, pooldefault. Enregistrer. - Avec
taskssélectionné, choisir Tables dans la barre de modes, puis + Ajouter des requêtes → Générer depuis la BDD. - Dans l'assistant CRUD, choisir la table
tasks, garder toutes les colonnes, cocher clé surIDet conserver les quatre instructions (SELECT, UPDATE, INSERT, DELETE). - Enregistrer. Le connecteur contient désormais
tasks_get,tasks_put,tasks_postettasks_delete:
SELECT ID, TITLE, STATUS, DUE_DATE FROM tasks
UPDATE tasks SET TITLE = :TITLE, STATUS = :STATUS, DUE_DATE = :DUE_DATE WHERE ID = :ID_ORIGINAL
Les colonnes sont lues dans la base à l'exécution de la requête ; rien d'autre n'est à déclarer. Voir Créer depuis une table de la base.
Étape 3 — L'écran
- Liberty Next → Construire → Écrans → + Ajouter une portée, choisir
tasks: la pastilletasksapparaît. - + Ajouter un écran, identifiant
tasks. Cliquer sur la nouvelle carte pour ouvrir l'éditeur d'écran. - Onglet Général : libellé
Tâches; cocher Editable pour la saisie dans la grille. - Onglet Requêtes : lecture
tasks_get, mise à jourtasks_put, insertiontasks_post, suppressiontasks_delete. - Onglet Dialogue : glisser les colonnes sur le formulaire.
- Enregistrer.
Les colonnes de la grille viennent de la requête de lecture ; leurs libellés et formats, du dictionnaire quand des entrées existent (son bouton Scan a table les propose). L'Assistant de création d'écran réalise les étapes 2 et 3 en une fois pour une table.
Étape 4 — L'entrée de menu
- Liberty Next → Construire → Menus → + Ajouter une portée, choisir
tasks: l'arborescence vide de l'application apparaît. - + Élément, puis dans l'inspecteur : libellé
Tâches, typescreen, cibletasks_get(l'écran construit dessus), icônetable. - Enregistrer.
Maintenant doté d'un menu, tasks est une application : il apparaît dans le sélecteur d'application, et son menu latéral affiche Tâches. Un clic ouvre la grille : une ligne ouvre le dialogue de modification, + Ajouter un dialogue vide. Voir Construire l'arbre et Transformer un connecteur en application.
Résultat
- Un pool — la connexion à la base.
- Un connecteur — les quatre requêtes sur la table.
- Un écran — la grille et le dialogue sur ces requêtes.
- Un menu — l'entrée qui ouvre l'écran, et qui fait du connecteur une application.
Chaque enregistrement s'est appliqué sans redémarrage. Le pool et le connecteur sont enregistrés dans connectors.toml, l'écran dans screens.toml, le menu dans menus.toml.
Pour aller plus loin
- Structure du projet — l'emplacement de ces fichiers.
- Dictionnaire — libellés, listes de valeurs et formats.
- Rôles et permissions — qui peut ouvrir le nouvel écran.
- Tutoriel CRM — une application complète avec plusieurs écrans, un tableau de bord et des tâches.