0

我的控制器中有以下代码:

  def show
    @activity = current_user.activities.find(params[:id])
    if graph.good_data?(params)
      graph.time_frame(params)
    else
      flash[:error] = "Please enter valid data."
      graph.default
    end
  end

当我输入无效数据时flash[:error],会收到一条消息,并相应地显示所有内容。如果我在输入无效数据后输入有效数据,则操作按预期执行。graph.time_frame(params)它的工作。但是,该flash[:error]消息在下一个请求中仍然存在。如果我再次输入有效数据,flash[:error]消息就会消失。有谁知道为什么会这样?

4

1 回答 1

2

使用flash.now[:error],它专门针对这种情况。

于 2012-10-04T22:09:32.890 回答