Rails flash.now使用任意键哈希?

时间:2011-10-04 02:56:38

标签: ruby-on-rails validation hash ruby-on-rails-3.1

所以我正在做一些基本的验证,并尝试在Flash哈希中添加一个任意键(你能做到吗?)

所以在我的控制器中我有这个...“previousaction”发布到这个页面。

if params[:home_value] == "Select One"
    flash.now[:home_value] = "Please select a home value"
    render "previousaction"
else
    #set controller vars.. render this action as normal
end

在视图中:

<% if home_value %>
  <h6 id="notice" style="color:red;padding-bottom:5px;"><%= home_value %></h6>
  <%= label_tag "Estimated Home Value", "Estimated Home Value", :style => "color:red;"%><br/>
<% else %>
  <%= label_tag "Estimated Home Value", "Estimated Home Value" %><br/>
<% end %>

但是在尝试加载控制器操作时(第一次)我收到此错误:

未定义的局部变量或方法`home_value'

提示赞赏:)

戴夫:

在上一个操作/视图中,我使用flash [:notice],如下所示:

if params[:zip_code].length != 5
  flash.now[:notice] = "Invalid zipcode. Please enter your 5-digit zipcode"
  render "firstpage"
else 

然后在视图中

<% if notice %>

闪光灯[:notice]是否为导轨的特殊闪光键?

1 个答案:

答案 0 :(得分:0)

home_value不会神奇地与flash相关联,它只是被视为局部变量;尝试直接使用:home_value访问Flash哈希。

那说,使用任意密钥的目的是什么?