2011-09-23 70 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。 –