• 20 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 23/10/2018

Ajoutez, modifiez et supprimez des lignes

Connectez-vous ou inscrivez-vous gratuitement pour bénéficier de toutes les fonctionnalités de ce cours !

Votre base de données est prête. Votre application Rails est prête. Tout est bon, apprenons à manipuler nos données !

Retournez sur la console rails. Première mission : ajouter une entrée dans notre table. Faites une à une ces commandes :

mon_livre = Book.new
mon_livre.title = "Dictionnaire"
mon_livre.save
mon_livre

Le résultat à la fin doit être le suivant :

#<Book id: 1, title: "Dictionnaire">

Que s’est-il passé ? Book.new permet de créer un nouveau livre. Mais ça ne l’ajoute pas immédiatement dans la base de données. Avant cela, nous le stockons dans une variable et indiquons quel titre nous voulons pour lui. Je l’appelle « Dictionnaire ». C’est au moment du save que l’ajout en base de données est fait.

Quand je fais « mon_livre » tout seul, cela affiche tous ses attributs (comme « title »). Que remarquez-vous ? Il a un « id » à 1. Quand nous créons une table, il y a automatiquement une colonne « id » qui se met en place. Quand vous créez un livre, son id sera 1, puis le suivant 2, etc. Vous n’avez pas à toucher vous-même à cette valeur.

Pour retrouver les livres que vous avez créés, faites :

Book.all

Bon, lire un dictionnaire n’est pas très cool, changeons son titre pour quelque chose d’autre :

mon_livre = Book.find(1)
mon_livre.title = "Pages Blanches"
mon_livre.save

Pour modifier mon titre, tout ce que j’ai à faire, c’est chercher dans la base de données le livre à modifier, puis de changer son titre comme je l’ai fait la première fois. Book.find(1) permet de chercher le livre dont l’identifiant est 1.

Quelqu’un me souffle à l’oreillette que lire les Pages Blanches n’est pas très enthousiasmant non plus, alors supprimons-les :

mon_livre = Book.find(1)
mon_livre.destroy

Les commandes parlent d’elles-mêmes. D'ailleurs, il est tout à fait possible de les enchaîner :

Book.find(1).destroy

Ainsi, même plus besoin de variable ! 

Si vous essayez cette deuxième méthode, une erreur va apparaître : à votre avis, pour quelle raison ?

Le livre est déjà supprimé, tout simplement ! Il n’est pas possible de supprimer deux fois un même élément. Pour testez cette 2e façon de faire, recréez un livre. Son identifiant sera 2 : celui-ci augmente même si le précédent a été supprimé.

Exemple de certificat de réussite
Exemple de certificat de réussite