Filtrer, trier et limiter les résultats
Utilisez filter_by, order_by et la pagination.
Filtrer, trier et limiter les résultats est une leçon Flask Academy gratuite sur CoddyKit. Ceci est la leçon 2 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Flask Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Flask Academy comprend 4 leçons au total.
Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.
Narrow Results with filter_by
Use filter_by() with keyword arguments to keep only rows that match a column exactly. It reads almost like English. 🎯
admins = User.query.filter_by(role="admin").all()More Power with filter
When you need comparisons, reach for filter() and full column expressions instead of plain equality.
adults = User.query.filter(User.age >= 18).all()Combine Conditions
Pass several expressions to filter() and they join with AND, so every condition must hold for a row to match.
q = User.query.filter(User.age >= 18, User.active == True)OR Conditions
For an either-or match, wrap conditions in or_() so a row qualifies when any one of them is true.
from sqlalchemy import or_
q = User.query.filter(or_(User.age < 18, User.vip))Sort with order_by
Use order_by() to sort results by a column. By default rows come back in ascending order.
users = User.query.order_by(User.name).all()Newest First with desc
Wrap a column in desc() to flip the sort and put the largest or latest values at the top.
posts = Post.query.order_by(Post.created.desc()).all()Cap the Count with limit
Add limit() to fetch only the first N rows. It keeps responses small and queries fast.
top = Post.query.order_by(Post.score.desc()).limit(5).all()Skip Rows with offset
Use offset() to skip a number of rows before returning. Combined with limit, it gives you simple paging.
page2 = Post.query.limit(10).offset(10).all()Real Pagination with paginate
Flask-SQLAlchemy bundles paging into paginate(), which returns items plus handy page metadata in one call.
p = Post.query.paginate(page=2, per_page=10)Chain It All Together
Filter, order, and limit chain fluently, and nothing runs until you finish with all or first.
q = Post.query.filter_by(public=True).order_by(Post.id.desc()).limit(3)Order Matters for Limits
Always pair limit() with order_by. Without a sort, which rows you get back is unpredictable.
Quick Check
You want the three highest-scoring posts. Which clause makes the score the top result?
Recap: Shaping Results
You can now filter, sort with order_by and desc, and trim output with limit, offset, and paginate. Powerful reads unlocked! 🚀
Questions Fréquemment Posées
La leçon « Filtrer, trier et limiter les résultats » est-elle gratuite ?
Oui — le texte complet de « Filtrer, trier et limiter les résultats » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Flask Academy, passe à CoddyKit PRO. Le cours Flask Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Filtrer, trier et limiter les résultats » ?
Utilisez filter_by, order_by et la pagination. Tu pratiques Flask Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Flask Academy ?
Aucune expérience préalable n'est requise. Flask Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 2 sur 4.
Combien de temps prend la leçon « Filtrer, trier et limiter les résultats » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Flask Academy ?
Oui. Chaque leçon Flask Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Récupérer des lignes avec query et get
- Filtrer, trier et limiter les résultats
- Définir les relations et les clés étrangères
- Jointures et chargement différé ou immédiat