【Rails5】viewでflashメッセージを動的に表示させる方法(コピペでOK!)
手順
よく使うのでテンプレとして残しておく。
以下のコードを、application.html.erbのbodyタグの一番始め に設定すればOK。
<% if flash.present? %>
<%# 第一引数にメッセージの種類、第二引数にメッセージが入ります %>
<% flash.each do |msg_type, msg| %>
<div class="alert alert-<%= msg_type %>" align="center">
<%= msg %>
</div>
<% end %>
<% end %>
bootstrapを導入していれば、alert-〇〇〇〇の部分に動的にcssが当たります。
bootstrapでcssを適用出来るflashの種類は、以下の4つ。
flash[:info] flash[:success] flash[:warning] flash[:danger]
それにより、メッセージの種類毎に色が変わるようになります。
参考
僕の中でRailsのflashの使い方が落ち着いてきた #Bootstrap - Qiita
RailsやRubyを学びたい人へ
RailsやRubyを学びたい人は、
RailsHack(レイルズハック)という、
最近できた新しいプログラミングスクール(今なら通常価格69,800円が、早期割で29,800円!)か、
Udemy
で下記のコースを受講すると良いです★
✅1. フルスタックエンジニアが教える 即戦力Railsエンジニア養成講座
✅2. 【はむ式】ハンズオンで学ぶRuby on Rails 6【Dockerにも触れられる】
<- おすすめ。ハムさんはReactやTypeScriptの教材も非常に丁寧。
✅3. はじめてのRuby on Rails入門-RubyとRailsを基礎から学びWebアプリケーションをネットに公開しよう
また、
Udemy
は定期的にセールをやっていますし(90%OFFとかもザラ)、
「30日間なら返金できる」ので、
満足できなかった時でも安心です。

【公式】RailsHack(レイルズハック)
【公式】Udemyで学んでみる
![]()