我有以下代码
redirect_to questionnaire_url, error: "Now please fill in the questionnaire."
通常情况下,如果我在重定向上方设置flash[:notice]
值,则Flash会在我的页面上显示,但是当我使用上面的代码时,它不会。
我显示闪光灯的代码是
- flash.each do |key, value|
= content_tag(:div, value, class: "alert alert-#{key}")
在= flash.inspect
写完后我收到了
#<ActionDispatch::Flash::FlashHash:0x000000044322f0 @used=#<Set: {}>, @closed=false, @flashes={}, @now=nil>
这当然是使用SLIM模板语言编写的。我的问题是notice
实际生成的内容以及如何调整代码来修复它?感谢。
答案 0 :(得分:7)
原因是因为only alert
and notice
可以使用此语法与redirect_to
内联使用。对于任何其他闪存密钥,您需要指定:
redirect_to questionnaire_url, flash: {error: "Now please fill in the questionnaire."}
答案 1 :(得分:0)
添加您的ApplicationController
:
add_flash_types :error