LoginSignup
3
1

More than 5 years have passed since last update.

Hanamiでflashメッセージを表示する

Posted at

Hanamiでflashメッセージを表示する方法です :cherry_blossom:

バージョン

  • Ruby 2.4.2
  • Hanami 1.1.0

事前準備

hanamiでは、デフォルトでセッションが無効になっているため、セッションを有効にする必要があります。
apps/web/application.rbを編集し、セッションを有効にします。

apps/web/application.rb
-      # sessions :cookie, secret: ENV['WEB_SESSIONS_SECRET']
+      sessions :cookie, secret: ENV['WEB_SESSIONS_SECRET']

使い方

コントローラーでメッセージを定義

flash[キー] = 値 で値を設定できます。(キーの名前は任意です。)

flash[:success] = '成功しました。'

ビューで表示

<%= flash[:success] %>
実装例
<% %i[success danger notice].each do |key| %>
  <p class="#{key}"><%= flash[key] %></p>
<% end %>

Railsと違うところ

  • Railsではflashflash.nowflash.keep等使えますが、hanamiでは、flash.nowflash.keepのような機能はありません。

  • ビューで表示する際、Railsだと、よくflash.each do |key, value|~みたいな書き方をしますが、hanamiではできません。(eachができません)

参考

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1