【问题标题】:Raise an alert in rails controller without redirect在没有重定向的 Rails 控制器中发出警报
【发布时间】: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

【问题讨论】:

    标签: ruby-on-rails redirect routing controller


    【解决方案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/…
    猜你喜欢
    • 2016-09-28
    • 2015-12-10
    • 1970-01-01
    • 1970-01-01
    • 2016-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多