Aller au contenu principal

Le site sera en maintenance le 19/04/2026 entre 09h30 et 12h00.

Aller au contenu principal

Migrations (`Flask-Migrate`)

Apprendre Flask : Le Guide Ultime
4 min de lecture
0 commentaires
Gratuit

Tu te souviens de db.create_all() ? C'est bien pour commencer, mais c'est nul pour la maintenance. Pourquoi ? Si tu ajoutes une colonne age à ta table User et que tu relances create_all(), Flask ne fera RIEN car la table existe déjà. Et si tu supprimes le fichier db, tu perds toutes tes données !

La solution pro : Les Migrations. C'est comme un système de version (Git) pour ta base de données.

Installation

pip install flask-migrate

Configuration

Dans app.py :

from flask_migrate import Migrate

# ... après db = SQLAlchemy(app)
migrate = Migrate(app, db)

Utilisation (Commandes Terminal)

  1. Initialisation (À faire une seule fois au début du projet) :

    flask db init
    

    Ça crée un dossier migrations.

  2. Créer une migration (À chaque fois que tu modifies tes modèles Python) : Disons que tu ajoutes age = db.Column(db.Integer) dans User.

    flask db migrate -m "Ajout de la colonne age"
    

    Flask détecte le changement et crée un script de migration.

  3. Appliquer la migration (Mettre à jour la base réelle) :

    flask db upgrade
    

Si tu as fait une bêtise, tu peux revenir en arrière avec :

flask db downgrade

Avec ça, tu peux faire évoluer ta BDD en production sans perdre de données. Indispensable.

Commentaires (0)

Laisser un commentaire

Aucun commentaire pour le moment. Soyez le premier à commenter !