rails 4 -- flash notice rails 4 -- flash notice ruby ruby

rails 4 -- flash notice


In application.html.erb, you would be displaying the flash messages.

Update that code as below

  <% flash.each do |name, msg| %>    <%= content_tag :div, msg, class: "alert alert-info" %>  <% end %>

You can add the classes that you want to apply to the flash message in the class option.

EDIT

The class is setup as alert alert-notice because of alert alert-<%= key %> in your code.When you call redirect_to @widget, notice: 'Widget was successfully created.

A flash message would be added in flash hash with key as notice and value as Widget was successfully created., i.e.,

flash[:notice] = "Widget was successfully created."

EDIT #2

format.html { redirect_to @widget, notice: 'Widget was successfully created.' }

notice: 'Widget was successfully created.' is an argument passed to redirect_to method. It is added to flash hash in this method.


Add this to

app/controllers/application_controller.rb

class ApplicationController  add_flash_types :success, :warning, :danger, :infoend

and then you can do this in your controllers

format.html { redirect_to @widget, success: 'Widget was successfully created.' }

provided you did this in your layouts

<div class="container">  <% flash.each do |key, value| %>    <div class="alert alert-<%= key %>"><%= value %></div>  <% end %>  <%= yield %></div>


If you don't want to mess up with your ApplicationController as @Sachin Mour indicated, you can just add few addtional CSS clases, accordingly:

in app/assets/stylesheets/custom.scss:

/*flash*/.alert-error {    background-color: #f2dede;    border-color: #eed3d7;    color: #b94a48;    text-align: left; }.alert-alert {    background-color: #f2dede;    border-color: #eed3d7;    color: #b94a48;    text-align: left; }.alert-success {    background-color: #dff0d8;    border-color: #d6e9c6;    color: #468847;    text-align: left; }.alert-notice {    background-color: #dff0d8;    border-color: #d6e9c6;    color: #468847;    text-align: left; }

Step by step tutorial, how to approach flash messages with devise and bootstrap, you can find here