我正在使用帮助方法在我的应用程序中显示错误和通知消息,如下所示。
def display_flash_content
[:error, :notice].map do |key|
collection = flash[key].blank? ? [] : (flash[key].respond_to?(:map) ? flash[key] : [flash[key]])
collection.map {|item| content_tag(:div, item, :class => key.to_s) }
end
end
我的布局有这个
<%= display_flash_content %>
我需要在执行某些操作时显示这些消息,然后重定向到特定页面(这很正常)。但我的问题是这个Flash消息在页面之间持续存在。在页面之间出现两次,需要在向用户显示后立即将其清除。
如何处理此方案。请帮帮我!
答案 0 :(得分:29)
显示Flash消息的方式很好。我认为问题在于你如何设置它们。例如,如果您要设置Flash消息而不是重定向,则可以分配到flash.now[:notice]
而不是flash[:notice]
,并且您的消息在重定向后不会消失。