Premier paramètre¶
Objectif : premier contact avec le module opt-in forge-mvc-settings.
Ce que vous allez apprendre : un paramètre applicatif est une paire
clé/valeur stockée en base.
On écrit un paramètre avec set_setting, puis on le relit avec get_setting.
La table de stockage doit d'abord exister, ce qui se fait en deux commandes.
Premier palier du niveau débutant de la progression Settings.
Module opt-in
Si forge-mvc-settings n'est pas installé, l'import échoue.
Le cœur de Forge, lui, ne dépend jamais de ce paquet.
Ce que ce starter montre¶
- créer la table des paramètres avec
forge settings:initpuisforge migration:apply; - écrire un premier paramètre avec
set_setting; - le relire avec
get_setting.
Fonctions Forge utilisées¶
| Fonction | Rôle dans ce starter | Référence |
|---|---|---|
set_setting(key, value) |
Crée ou met à jour un paramètre. | Opt-ins |
get_setting(key, default) |
Lit la valeur d'un paramètre. | Opt-ins |
1. Créer la table¶
La table n'est pas créée automatiquement.
On la prépare une seule fois, depuis la racine du projet :
Comprendre ce code¶
forge settings:initcopie la migration SQL dansmvc/migrations/.forge migration:applyexécute la migration et crée la tableapp_settings.- Une écriture en base reste explicite : rien n'est créé en silence.
2. Écrire et relire un paramètre¶
from forge_mvc_settings import set_setting, get_setting
set_setting("etablissement.nom", "Collège Victor Hugo")
nom = get_setting("etablissement.nom")
print(nom) # Collège Victor Hugo
Comprendre ce code¶
set_setting("etablissement.nom", "Collège Victor Hugo")enregistre la valeur.- Le type est déduit de la valeur : ici une chaîne (
str). get_setting("etablissement.nom")relit la valeur telle qu'elle a été stockée.
À retenir¶
- Un paramètre se crée avec
set_setting(clé, valeur). get_setting(clé)renvoie la valeur enregistrée.- La table
app_settingsdoit exister :forge settings:initpuisforge migration:apply.
Après ce starter¶
Vous avez écrit et relu un premier paramètre.
Approfondissons l'écriture et la lecture, avec les valeurs par défaut.