Services Api_Ihm Src Database Config

Version: 1.2.0 (2023-12-20) Auteur: Kahina et franck - Groupe 2 Commit: bigmoletos@yopmail.com

Configuration de l’application Flask pour différents environnements.

Ce module définit les configurations pour les différents environnements de l’application (développement, production, test). Il gère: - Les paramètres de connexion aux bases de données - Les clés secrètes et variables d’environnement - Les options spécifiques à chaque environnement

Architecture:

  1. Configuration de base: - Paramètres communs à tous les environnements - Gestion des clés secrètes - Options SQLAlchemy globales

  2. Configurations spécifiques: - Développement: SQLite local - Production: PostgreSQL - Test: SQLite en mémoire

  3. Gestion des chemins: - Chemins absolus pour les fichiers - Support multi-plateformes - Structure du projet

Utilisation:

from database.config import config app.config.from_object(config[“development”])

Dépendances:

  • os : Variables d’environnement

  • pathlib : Gestion des chemins

  • dotenv : Chargement des variables d’environnement

class services.api_ihm.src.database.config.Config[source]

Bases : object

Configuration de base commune à tous les environnements.

SECRET_KEY = 'votre_clé_secrète_générée_aléatoirement'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_ENGINE_OPTIONS = {'pool_pre_ping': True, 'pool_recycle': 300}
class services.api_ihm.src.database.config.DevelopmentConfig[source]

Bases : Config

Configuration pour l’environnement de développement.

db_path = 'C:\\AJC_projets\\projet_qualite_air\\services\\api_ihm\\src\\database\\db.sqlite'
SQLALCHEMY_DATABASE_URI = 'sqlite:///C:\\AJC_projets\\projet_qualite_air\\services\\api_ihm\\src\\database\\db.sqlite'
DEBUG = True
class services.api_ihm.src.database.config.ProductionConfig[source]

Bases : Config

Configuration pour l’environnement de production.

__init__()[source]
class services.api_ihm.src.database.config.TestingConfig[source]

Bases : Config

Configuration pour l’environnement de test.

SQLALCHEMY_DATABASE_URI = 'sqlite:///:memory:'
TESTING = True