deviseのflashメッセージにbootstrapのアラートを適用
環境
ruby 2.5.7
rails 5.2.3
bootstrap導入済み
実装
①helperメソッドを定義
keyをbootstrapように置き換えていきます。
alert→warning , notice→success , error→danger
app/helpers/devise_helper.rb
module DeviseHelper
def bootstrap_alert(key)
case key
when "alert"
"warning"
when "notice"
"success"
when "error"
"danger"
end
end
end
②flashメッセージのテンプレートを作成
置き換えたkeyでclass名が変わるようにします。(3行目)
divタグの中はbootstrapのリファレンスを参照
views/layouts/_flashes.html.erb
<% flash.each do |key, value| %>
<div class="alert alert-<%= bootstrap_alert(key) %> alert-dismissible fade show">
<span><%= value %></span>
<button type="button" class="close" data-dismiss="alert" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<% end %>
③application.html.erbで呼び出す
適当な場所で呼び出しましょう。
<body>
<%= render 'layouts/header' %>
<%= render 'layouts/flashes' %>
<%= yield %>
<%= render 'layouts/footer'%>
</body>
参考
https://hachy.github.io/2019/10/15/flashes-with-devise-and-bootstrap.html
Author And Source
この問題について(deviseのflashメッセージにbootstrapのアラートを適用), 我々は、より多くの情報をここで見つけました https://qiita.com/fujimorichihiro/items/726cda9e4f801898fa23著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .