Vue d'ensemble

Flask-SQLAlchemy 3.1, publié le 12 septembre 2023, corrige des bugs et améliore la compatibilité avec SQLAlchemy 2.0.

Fonctionnalités principales

Compatibilité SQLAlchemy 2.0

L’intégration avec le style de requêtes SQLAlchemy 2.0 est complète, utilisant select() au lieu de query.

python
from flask_sqlalchemy import SQLAlchemy
from sqlalchemy import select

db = SQLAlchemy()

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(80))

# Style SQLAlchemy 2.0
users = db.session.execute(select(User)).scalars().all()

Corrections de bugs

Plusieurs corrections améliorent la gestion des sessions et le nettoyage des connexions en fin de requête.

python
from flask import Flask
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///app.db'
db = SQLAlchemy(app)

# La session est nettoyée automatiquement
# en fin de requête (amélioré en 3.1)

Sources