コントローラーに ajax リクエストを送信するビューがあり、アクションが正常に完了した後、flash.now[:notice]を初期化します。しかし、コントロールがビューに戻った後。たまたまフラッシュメッセージが表示されません。
flash.now[:notice] = "Request Completed successfully" if @meetings.any?
コントローラーに ajax リクエストを送信するビューがあり、アクションが正常に完了した後、flash.now[:notice]を初期化します。しかし、コントロールがビューに戻った後。たまたまフラッシュメッセージが表示されません。
flash.now[:notice] = "Request Completed successfully" if @meetings.any?
リダイレクト使用時
flash[:notice] = "This message value is available in next request-response cycle"
レンダリング使用時
flash.now[:notice] = "Message is available in same request-response cycle"
インフォメーションはこちらから
render を呼び出す前に flash.now を実行しますか? そうしないと、メッセージが表示されません。
コントローラーのコード:
flash[:success] = "All good!"
format.html { redirect_to some_path}
そして閉じるボタンのあるビューで:
<% flash.each do |key, value| %>
<%= content_tag(:div, class: "alert alert-#{key} alert-dismissable") do %>
<%= value %>
<button type="button" class="close" data-dismiss="alert" aria-hidden="true">×</button>
<% end %>
<% end %>
次のようなものがあることを確認してください
<% flash.each do |key, value| %>
<div class="flash <%= key %>"><%= value %></div>
<% end %>
application.html.erb ファイル内: 通知が表示される場所であるため、追加しない場合は追加する必要があります。