在没有重定向的 Rails 控制器中发出警报
Posted
技术标签:
【中文标题】在没有重定向的 Rails 控制器中发出警报【英文标题】:Raise an alert in rails controller without redirect 【发布时间】:2011-11-23 23:52:22 【问题描述】:如果消息已保存/未保存,我只想闪烁通知/错误,没有任何重定向,我怎么能没有重定向:
respond_to do |format|
if @message.save
format.html redirect_to request.referer, :notice => 'Message sent!' #dont want redirect
else
# error message here
end
【问题讨论】:
【参考方案1】:在 Rails 5 中,您可以:
format.html redirect_to request.referer, alert: 'Message sent!'
【讨论】:
这为我提出了too few arguments
【参考方案2】:
使用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
【讨论】:
@RahulDess 可能为时已晚,但对其他人来说:是的,它确实在 Rails 4 中工作。它甚至在 Rails 指南中提到:guides.rubyonrails.org/…以上是关于在没有重定向的 Rails 控制器中发出警报的主要内容,如果未能解决你的问题,请参考以下文章