Outils pour utilisateurs

Outils du site


dev:python:flask:flask_gestion_des_configurations

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Prochaine révision
Révision précédente
dev:python:flask:flask_gestion_des_configurations [2025/07/26 11:31] – créée yoanndev:python:flask:flask_gestion_des_configurations [2025/07/26 13:09] (Version actuelle) yoann
Ligne 5: Ligne 5:
 ====== Flask : Gestion des configurations ====== ====== Flask : Gestion des configurations ======
  
-La classe Config du framework Flask contient une méthode from_object() qui permet +La classe ''Config'' du framework **Flask** contient une méthode ''from_object()'' qui permet de charger une configuration à partir d'un objet Python (une classe ou un module).
  
 +
 +Conserver les variables de configuration dans des classes est intéressant pour les raisons suivantes :
 +
 +  * **Lisibilité** : Les paramètres de configurations sont définis dans les attributs de la classe plus facilement lisibles et compréhensibles ;
 +  * **Flexibilité** : Il est simple de recharger une configuration et ainsi de basculer entre plsusieurs environnements (developpement, test, production) ;
 +  * **Centralisation** de la configuration : Toutes les options de configuration sont regroupées et organisées. L'héritage permet de factoriser et redéfinir les valeurs selon les environnements souhaités.
 +
 +
 +Dans le répertoire du projet, on peut créer un module configs.py
 +<code python configs.py>
 +class DefaultConfig:
 +  DEBUG = False
 +  TESTING = False
 +  SECRET_KEY = 'your_secret_key_here'
 +  SQLALCHEMY_DATABASE_URI = 'sqlite:///database.db'
 +
 +class DevelopmentConfig(DefaultConfig):
 +  DEBUG = True
 +  
 +  
 +class TestingConfig(DefaultConfig):
 +  TESTING = True
 +</code> 
 +
 +
 +On peut ensuite facilement importer et utiliser ces classes dans l'application factory ou le shell flask
 +<code python>
 +</code>
  
 ===== Références ===== ===== Références =====
  
   * [[https://runebook.dev/en/articles/flask/api/index/flask.Config.from_object| Flask : Utiliser la méthode Config.from_object() (runebook.dev)]]   * [[https://runebook.dev/en/articles/flask/api/index/flask.Config.from_object| Flask : Utiliser la méthode Config.from_object() (runebook.dev)]]
dev/python/flask/flask_gestion_des_configurations.1753529500.txt.gz · Dernière modification : 2025/07/26 11:31 de yoann