2011-09-23 42 views
16

我只是想發出閃爍的通知/錯誤如果消息是/不保存,沒有任何重定向,我怎麼能不重定向:發出警報,而不重定向

respond_to do |format| 
    if @message.save 
    format.html { redirect_to request.referer, :notice => 'Message sent!' } #dont want redirect 
    else 
    # error message here 
    end 

回答

24

使用flash.now

if @message.save 
    flash.now[:notice] = 'Message sent!' 
else 
    flash.now[:alert] = 'Error while sending message!' 
end 

respond_to do |format| 
    format.html { # blahblah render } 
end 
+4

它在軌道4中工作嗎?因爲我沒有得到它。 –

+0

@RahulDess可能爲時已晚,但對於其他人:是的,它可以在Rails 4中工作。它甚至在導軌指南中提到過:http://guides.rubyonrails.org/action_controller_overview.html#flash-now – LeEnno

+0

它在rails 5。 –