Utiliser la DB disponible sur moodle!

Jusqu'ici, vous avez vu comment vous pouvez interagir avec une base de données SQLite initialement (presque) vide. Nous avons vu comment créer des tables, faire des requêtes et comment faire interagir le Python, le SQL et l'HTML.

Nous allons maintenant voir comment nous pouvons réutiliser la base de données disponible sur Moodle.

Une fois que vous avez téléchargé le fichier de la base de données, vous devez le placer dans le dossier instance qui se trouve au même niveau que le dossier mobility et qui a déjà été créé par Flask si vous avez correctement suivi ce TP.

|-- instance
|   `-- db.sqlite
|-- mobility

S'il n'est pas encore créé, vous pouvez le faire à l'aide de la commande mkdir depuis le dossier dans lequel vous avez mis le code relatif au TP.

mkdir instance

Ensuite, copiez la DB à l'aide de la commande cp.

cp <chemin_vers_la_db>/db.sqlite instance/db.sqlite

Il vous suffit ensuite de modifier le fichier db.py pour que la fonction init_db n'exécute pas le script schema.sql

mobility/db.py

def init_db():
    db = get_db()
    # with current_app.open_resource('schema.sql') as f:
    #     db.executescript(f.read().decode('utf8'))

Si vous relancez votre application, vous devrez voir une longue liste d'aéroports s'afficher

../../_images/final.png

Lorsque vous allez ajouter la base de données dans votre projet sur la forge, vous allez voir que git ne verra pas ce fichier. Cela est dû au fait que dans le fichier .gitignore qui vous a été fourni, le dossier instance est ignoré. Commentez la ligne correspondante dans le fichier.

.gitignore

# instance/

Continuez en lisant Continuez à développer!.