• 20 hours
  • Medium

Free online content available in this course.

course.header.alt.is_certifying

Got it!

Last updated on 1/17/17

Ajoutez des notifications avec les messages flash

Log in or subscribe for free to enjoy all this course has to offer!

Un message flash est une notification qui indique qu’une opération s’est bien ou mal déroulée. Par exemple, afficher « Le livre a bien été modifié » suite à la modification d’un livre est un message flash.

Certaines variables ont des comportements spéciaux :

  • Vous connaissez params, un hash qui récupère les données de vos formulaires et variables de vos adresses. Par exemple, /books/5, dont la route est /books/:id, va donner accès au contrôleur à la variable params[:id] dont la valeur sera 5 .

  • Il existe une autre variable spéciale : flash. C’est aussi un hash qui a la particularité suivante : tout ce que vous mettez à l’intérieur sera disponible le temps d’une redirection.

    Par exemple :

# app/controllers/books_controller.rb
def update
  @book = Book.find(params[:id])
  if @book.update title: params[:title]
    flash[:success] = "Le livre a été mis à jour."
    redirect_to "/books/#{params[:id]}"
  else
    render 'show'
  end
end
# app/views/layout/application.html.erb
<div><%= flash[:success] %></div>
<%= yield %>

Juste avant la redirection, nous insérons un message pour la clé success. Dans le layout, j’affiche le contenu de flash[:success]. Ainsi, en tête du site, s’affichera mon message après modification du livre.

Example of certificate of achievement
Example of certificate of achievement