• 20 heures
  • Moyenne

Ce cours est visible gratuitement en ligne.

Ce cours est en vidéo.

Vous pouvez obtenir un certificat de réussite à l'issue de ce cours.

J'ai tout compris !

Mis à jour le 23/10/2018

Supprimez des données

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

Chaînon manquant de la manipulation de données : la suppression. La seule information qu’il vous manque pour le faire est de savoir qu’en plus de get, post et patch, il existe la method delete. À partir de là, il n’y a plus qu’à dérouler tout ce que nous savons déjà faire. Joueur que je suis, je ne vous donne plus le nom des fichiers à manipuler. Si vous bloquez, les fichiers de l’application sont disponibles plus bas.

Ajoutez la route suivante :

delete 'books/:id' => 'books#destroy'

Ajoutez la fonction associée dans le contrôleur :

def destroy
  Book.find(params[:id]).destroy
  redirect_to "/books"
end

Il ne manque plus qu’un bouton de suppression à mettre sur la page du livre :

<%= form_tag "/books/#{@book.id}", method: "delete" do %>
  <input type="submit" value="Supprimer le livre" />
<% end %>

Arrivez-vous à comprendre ce que fait chaque partie de ce code ?

  • Au même titre que nous avons les fonctions create et update, nous ajoutons destroy ;

  • Nous faisons un destroy sur notre Book pour le supprimer ;

  • Nous redirigeons l’utilisateur vers la liste de livres après la suppression. Pas sur le livre en question, puisqu’il n’existe plus !

Dans la vue, nous ajoutons un bouton du suppression dans un formulaire très minimaliste, dont la seule chose importante est la method delete, qui coïncide avec la route.

Vous avez du mal à savoir où mettre chaque bout de code ? Je vous invite à observer le code de cette application à cette adresse : https://github.com/oc-courses/initiation-rails-p2

Ou à le télécharger ici : https://github.com/oc-courses/initiation-rails-p2/archive/master.zip

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