Aller au contenu principal

3 formations sont désormais disponibles : Python, Flask et JS.

Aller au contenu principal

Un Blueprint est une "mini-application" Flask qui ne peut pas tourner toute seule, mais qui peut être greffée sur l'application principale.

Créer un Blueprint

Crée un dossier auth et un fichier auth/routes.py.

from flask import Blueprint, render_template

# 1. On définit le Blueprint
# 'auth_bp' est le nom interne utilisé par Flask pour les reverse URL (url_for)
auth_bp = Blueprint('auth_bp', __name__, template_folder='templates')

# 2. On attache des routes au Blueprint (et plus à 'app')
@auth_bp.route('/login')
def login():
    return render_template('auth/login.html')

@auth_bp.route('/register')
def register():
    return "Page d'inscription"

Enregistrer le Blueprint (app.py)

Maintenant, on retourne dans le fichier principal et on connecte les morceaux.

from flask import Flask
from auth.routes import auth_bp # On importe notre Blueprint

app = Flask(__name__)

# On l'enregistre avec un préfixe d'URL
app.register_blueprint(auth_bp, url_prefix='/auth')

Résultat :

  • La fonction login sera accessible via /auth/login.
  • La fonction register via /auth/register.

url_for avec les Blueprints

⚠️ Attention ! Quand tu utilises url_for, tu dois maintenant préciser le nom du Blueprint.

  • Avant : url_for('login')
  • Après : url_for('auth_bp.login') (NomDuBlueprint.NomDeLaFonction)

C'est propre, rangé, et facile à maintenir.