我有以下代码
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
实际产生的以及我如何调整我的代码来修复它?谢谢。
最佳答案
原因是因为only alert
and notice
可以使用此语法与 redirect_to
内联使用。对于任何其他闪存 key ,您需要指定:
redirect_to questionnaire_url, flash: {error: "Now please fill in the questionnaire."}
关于ruby-on-rails - Flash 和 redirect_to 在一行中不产生 flash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16722180/