Nouveau : Datasets open source gratuits disponibles !Decouvrir →
🐍
frameworks 20 entrees

Flask Cheatsheet

Apprenez rapidement les bases de Flask avec cette cheatsheet complète.

Voici la cheatsheet exhaustive en français pour Flask :

Bases & syntaxe

Installation

pip install Flask

Installation du framework Flask

Création d'une application Flask simple

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello, World!'

if __name__ == '__main__':
    app.run(debug=True)

Création d'un serveur web Flask minimal

Structures de données

Utilisation de variables globales

app.config['SECRET_KEY'] = 'supersecretkey'

Configuration globale pour l'application

Templates Jinja2

{% for item in items %}
    <li>item</li>
{% endfor %}

Utilisation des boucles et des conditions dans les templates

Fonctions & methodes essentielles

Route avec paramètres

@app.route('/user/<username>')
def show_user_profile(username):
    return f'User {username}'

Routes dynamiques avec paramètres

Gestion des erreurs

@app.errorhandler(404)
def page_not_found(e):
    return 'This page does not exist', 404

Gestion des erreurs HTTP

Patterns courants

Templates par défaut

{% extends "base.html" %}
{% block content %}
<h1>Page Content</h1>
{% endblock %}

Utilisation de templates parent/ enfant

Formulaires avec Flask-WTF

from flask_wtf import FlaskForm
from wtforms import StringField, SubmitField

class MyForm(FlaskForm):
    name = StringField('Name')
    submit = SubmitField('Submit')

@app.route('/', methods=['GET', 'POST'])
def index():
    form = MyForm()
    if form.validate_on_submit():
        return f'Hello {form.name.data}'
    return render_template('index.html', form=form)

Création de formulaires sécurisés

Opérations avancées

Connexion à une base de données avec Flask-SQLAlchemy

from flask_sqlalchemy import SQLAlchemy

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

class User(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(80), unique=True, nullable=False)

@app.route('/add_user/<username>')
def add_user(username):
    new_user = User(username=username)
    db.session.add(new_user)
    db.session.commit()
    return 'User added'

Utilisation de l'ORM SQLAlchemy

Middleware personnalisé

from flask import Flask, request

app = Flask(__name__)

@app.before_request
def before_request():
    print('Before request')

@app.after_request
def after_request(response):
    print('After request')
    return response

@app.route('/')
def index():
    return 'Hello'

Création de middleware pour les traitements avant et après les requêtes

Debugging & outils

Utilisation du debugger intégré

app.run(debug=True)

Activer le mode debug pour le débogage

Panneau d'outils Flask-Debugtoolbar

pip install Flask-DebugToolbar
from flask_debugtoolbar import DebugToolbarExtension

app.config['DEBUG_TB_INTERCEPT_REDIRECTS'] = False
toolbar = DebugToolbarExtension(app)

Ajouter des outils de débogage pour les développeurs

Profiling avec Flask-Profiler

pip install Flask-Profiler
from flask_profiler import Profiler

@app.route('/')
@profiler.profile()
def index():
    return 'Hello'

Analyser le rendu et la performance des vues

Projet Flask a lancer ?

Besoin d'aide sur un projet ? Decrivez-le pour des conseils personnalises.

Recevoir des conseils

Questions frequentes

A quoi sert cette cheatsheet Flask ?
Cette cheatsheet Flask regroupe la syntaxe, les commandes et les astuces essentielles pour Flask. Elle est concue pour servir d'aide-memoire rapide, que vous soyez debutant ou developpeur confirme cherchant une reference rapide.
Comment utiliser cette cheatsheet Flask ?
Parcourez les sections pour trouver la syntaxe ou la commande dont vous avez besoin. Vous pouvez la garder ouverte dans un onglet pendant que vous codez, ou la copier dans vos notes pour un acces hors ligne.
Cette cheatsheet est-elle a jour ?
Oui, nos cheatsheets sont regulierement mises a jour pour refleter les dernieres versions et bonnes pratiques de Flask. Si vous remarquez une information obsolete, n'hesitez pas a nous contacter.

Pages liees

Chaque semaine, le meilleur de la tech francaise

Tendances, salaires, outils et opportunites — directement dans votre boite mail.

Gratuit. Desabonnement en un clic. Pas de spam.