Ressources Magic Makers

 

Site en maintenance

 
Nous sommes actuellement entrain de mettre à jour les ressources de ce site.
Pendant la mise à jour vous pouvez retrouver tous les nouveaux contenus sur le site
 

https://lp-magicmakers.fr/

 
 

Paramétrer Mongo DB

C'est quoi Mongo DB

MongoDB est un outil qui permet de créer des bases de données (DataBase en anglais d’où le DB).

Une base de donnée est une structure qui permet de stocker plein d’informations. Dans MongoDB on peut créer une base de donnée dans laquelle on créé plein de dictionnaires python, et chaque donnée est un dictionnaire.

Dans une base de donnée on peut ajouter des éléments, en enlever, rechercher toutes les données qui ont une certaine valeur, etc. C’est très pratique et utile pour avoir plein d’informations et y accéder facilement.

Nos bases de données sont stockées en ligne ce qui permet que tout le monde puisse y accéder ou ajouter des données. Par exemple si on a une base de donnée utilisateur, on veut que n’importe qui puisse créer une donnée pour lui même et se créer un compte.

Créer et paramétrer une base de données sur mongoDB

Regarde la vidéo suivante pour créer ta base de données MongoDB !

Utiliser Mongo DB

Cluster, base de donnée, tables...

Avant d’aller plus loin, il est important de faire la différence entre 3 notions :

  • un cluster
  • une base de donnée
  • une table (on dit également une collection)

Le cluster, c’est l’endroit où sont stockées toutes tes bases de données.

En effet, on pourrait avoir plusieurs bases de données si on le voulait !

La base de donnée, c’est l’endroit où sont stockées toutes les tables qui seront utilisées par ton application.

Une table (ou collection), c’est un espace où sont stockées des données de même type.

Par exemple je peux avoir une table utilisateurs qui contiendra tous mes utilisateurs ! Ou alors une table posts qui contiendra tous les posts que les utilisateurs ont posté, etc.

Dans l’exemple ci-contre, je peux voir sur MongoDB que dans mon cluster, j’ai une seule base de donnée (appelée DBTest) qui contient deux tables (utilisateurs et posts).

On voit aussi un exemple de donnée contenue dans ma table « utilisateurs » !

Mise en place

Dans la partie précédente, tu as pu créer un compte MongoDB et surtout créer ton cluster. Si tu ne l’as pas encore fait, prend le temps de le faire !

Ensuite, dans ton code, commence par importer la librairie pymongo pour faire du MongoDB en python

import pymongo

Puis il faut stocker l’accès au cluster pour ton application dans une variable avec la fonction MongoClient.

mongo = pymongo.MongoClient("lien")

Bien sûr, il faudra remplacer « lien » par le lien de connexion !

Lien de connexion

Tu as normalement pu générer ton lien de connexion en regardant la vidéo de la partie précédente (à partir de 2:13).

Dans le lien de connexion, ton mot de passe et ton identifiant apparaissent. Tu peux aller voir ici comment sécuriser tes données pour éviter que tout le monde y ait accès.

Tester la connexion à la base de données

Ça y est, tu as maintenant le code qu’il faut pour te connecter à ta base de données !

Tu peux maintenant créer une route de base pour tester ton application. Dans cette route, on va écrire :

return cluster.db.table.find({})

En remplaçant les termes suivants :

  • cluster : il s’agit de la variable qui contient l’accès à ton cluster (généralement on l’appelle cluster ou mongo)
  • db : le nom de la base de donnée à laquelle tu souhaites accéder
  • table : le nom de la table à laquelle tu souhaites accéder
Dans cet exemple, j'accède à la base de donnée "DBTest" et à la collection "utilisateurs'"

Lance ton application : si tu as bien un statut 200 dans la console, c’est que la connexion a réussi !

Félicitations, ton application est bien liée à ta base de données !

Que signifie la ligne de code que l’on a ajouté pour tester la connexion ? Tu en sauras plus sur la page sur les requêtes MongoDB 😉

Créer et accéder à une table

Pour accéder à une table il suffit d’utiliser notre cluster et le nom de la base de donnée, comme vu précédemment :

cluster.db.table

On accède à notre cluster via la variable qui contient l’accès, puis on accède à la base de données avec la variable db et enfin à notre table avec son nom.

On stocke généralement l’accès à cette table dans une variable !

Dans cet exemple, je stocke l’accès à ma table « toto » dans la variable « db_toto »

Pour créer une nouvelle table, c’est exactement pareil : on va essayer d’y accéder et si elle n’existe pas elle sera alors créée automatiquement.