我在我的控制器中执行一些异常处理,当出现异常时:create action,我将渲染到:new action并显示一条flash消息。为什么flash消息不会消失?
一切工作正常,我可以看到当异常捕获闪光灯的消息,但是当我重定向到(handly点击)其他页,闪光灯消息还在这里。然后我重定向到另一个页面(第二次点击),消息可能消失。
任何人知道是什么原因?
我的控制器代码:
class MessagesController < ApplicationController
rescue_from Exception, :with => :render_new
def new
end
def create
end
private
def render_new
flash[:alert] = t("uploading_error")
render :action => :new
end
end
我的布局代码(Haml的):
%body
#content
- unless flash[:alert].blank?
#alert= flash[:alert]
优秀的解决方案和纽带!谢谢你zabba! – 2011-01-06 10:58:56
现在我知道更多关于闪光和flash.now。因此,如果我使用redirect_to而不是渲染,使用闪光灯也不会有问题。 – 2011-01-06 12:20:39
仅供参考:链接已中断。但是没有看到链接,我不得不承认我很好奇为什么flash.now [:alert]不是默认的。 – Trip 2012-03-14 15:17:58