Le framework flask

Il existe de nombreuses librairies qui permettent de faciliter l'écriture de sites web interactifs en Python: Django, Webpy ou flask. Dans le cadre de ce projet, nous avons choisi flask qui a l'avantage d'être simple à apprendre tout en permettant de profiter de la puissance de python, un langage qui vous est déjà familier.

Flask

Flask s'inspire de ce mode de fonctionnement et vous permet d'écrire un programme en python qui répond aux requêtes HTTP faites par le navigateur.

from flask import Flask
app = Flask(__name__)

@app.route('/')
def index():
    """
    retourne le contenu de la page index.html
    """
    return 'Contenu de index.html'

@app.route('/page.html')
def page():
    """
    retourne le contenu de la page page.html
    """
    return 'Contenu de page.html'

Flask utilise des décorateurs python pour indiquer l'URL qui doit être associée à une fonction python. Lorsque le serveur reçoit une requête GET HTTP qui demande le fichier /, il exécute la fonction index() qui retourne le contenu correspondant au fichier index.html. Il en va de même pour la fonction page() qui est appelée automatiquement par le serveur web dès que celui-ci reçoit une requête pour page.html.

Lancer l'application

L'exemple ci-dessus est suffisant pour créer un petit site simple. Si le code python a été enregistré dans mobility.py, alors la commande suivante suffit à lancer un serveur local:

flask --app mobility run
* Serving Flask app 'mobility'
* Debug mode: off
WARNING: This is a development server. Do not use it in a production deployment.[...]
* Running on http://127.0.0.1:5000
Press CTRL+C to quit

Vous pouvez maintenant naviguer vers http://127.0.0.1:5000 pour visiter votre site web.

Note

Pour développer, il convient d'héberger votre site web en local. Dans un second temps, nous vous expliquerons comment utiliser un pipeline d'intégration continue sur git.

Continuez votre lecture avec le document Le modèle MVC.