Skip to main content

Forge Settings — paramètres applicatifs persistés en MariaDB (table app_settings), API explicite get_setting/set_setting, SQL visible.

Project description

forge-mvc-settings

Paramètres applicatifs opt-in pour Forge : des réglages d'application persistés dans MariaDB, en paire clé/valeur typée, avec une API explicite.

Ce paquet évite de tout mettre dans .env : ce qui change à l'exécution (nom d'établissement, durée d'une session, mode maintenance, options pédagogiques) vit dans une table app_settings, lisible et modifiable par l'application.

Installation

pip install --pre forge-mvc-settings

En développement depuis le dépôt Forge : pip install -e ./packages/forge-mvc-settings.

Mise en place de la table

La table n'est pas créée automatiquement (principe : SQL visible, pas d'écriture cachée). Le paquet fournit une migration :

forge settings:init        # copie la migration dans mvc/migrations/
forge migration:apply      # crée la table app_settings

Utilisation

from forge_mvc_settings import get_setting, set_setting

set_setting("etablissement.nom", "Collège Victor Hugo")
set_setting("qcm.session_duration", 30)        # int
set_setting("maintenance", False)              # bool

nom = get_setting("etablissement.nom")          # "Collège Victor Hugo"
duree = get_setting("qcm.session_duration", 20) # 30 (int)
en_maintenance = get_setting("maintenance")     # False (bool)

L'API expose get_setting, set_setting, get_all_settings, delete_setting, plus SettingsError, TABLE_NAME, SUPPORTED_TYPES et CREATE_TABLE_SQL.

Périmètre

  • Types supportés : str, int, bool, float (sérialisés en texte, recoercés à la lecture).
  • Le cœur de Forge ignore tout des paramètres ; la dépendance va de l'opt-in vers le cœur, jamais l'inverse.
  • Hors périmètre : cache, secrets chiffrés, paramètres par utilisateur.

Documentation complète : https://forgemvc.com/docs/forge/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

forge_mvc_settings-1.0.0rc2.tar.gz (12.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

forge_mvc_settings-1.0.0rc2-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file forge_mvc_settings-1.0.0rc2.tar.gz.

File metadata

  • Download URL: forge_mvc_settings-1.0.0rc2.tar.gz
  • Upload date:
  • Size: 12.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for forge_mvc_settings-1.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 59cabe945fce5df286af1aeae73045b512bfd6f88e99d13238a2a8355b2e019e
MD5 bfffac73b59ac1b6c549b37929130e96
BLAKE2b-256 19dbedb0055cd100852426856e0a05f1cb5e56f831240b1c7e3bdca55341290a

See more details on using hashes here.

File details

Details for the file forge_mvc_settings-1.0.0rc2-py3-none-any.whl.

File metadata

File hashes

Hashes for forge_mvc_settings-1.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 f11576b1e36987c964138b1bfa6eb8962808e0488ff2cfed334c5bb9c1293c97
MD5 e097ebcb3977b028f6a05eccde84f3c8
BLAKE2b-256 f1c4c1a9104ce78c5b6278a2d406d4d79e789cedcacc5093a4e07819aba2343e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page