Aller au contenu

Aide-mémoire Settings

Synthèse de l'API de forge-mvc-settings, à garder sous la main.

Mise en place de la table

Commande Effet
forge settings:init Copie la migration SQL dans mvc/migrations/.
forge migration:apply Applique la migration et crée la table app_settings.

La table n'est jamais créée automatiquement.

Écrire et lire

Appel Résultat
set_setting(key, value) Upsert : crée ou met à jour ; renvoie None.
get_setting(key) Valeur recoercée selon son type, ou None si absente.
get_setting(key, default) Valeur, ou default si la clé n'existe pas.
get_all_settings() dict de tous les paramètres, triés par clé.
delete_setting(key) True si le paramètre existait, False sinon.

Toutes ces fonctions acceptent un paramètre db= injectable (défaut
core.database.db), utile en test.

Clés et types

Élément Règle
Clé Une lettre, puis lettres, chiffres, _ ou ., sur 191 caractères au plus.
Clé hiérarchique Le point structure les noms : qcm.session_duration, etablissement.nom.
Types SUPPORTED_TYPES == ("str", "int", "bool", "float").
Type déduit set_setting choisit le type d'après la valeur ; get_setting le recoerce.

Constantes et erreurs

Nom Valeur ou rôle
TABLE_NAME app_settings
SUPPORTED_TYPES ("str", "int", "bool", "float")
CREATE_TABLE_SQL Définition SQL de la table, exposée pour inspection.
SettingsError Levée sur clé invalide ou type non supporté.

Rappel

Forge Core ne dépend pas du paquet.
L'application décide quels réglages elle persiste et où la table est créée.