Ruby on rails Rails:表单提交后访问视图中的参数

Ruby on rails Rails:表单提交后访问视图中的参数,ruby-on-rails,ruby,ruby-on-rails-3,ruby-on-rails-3.2,Ruby On Rails,Ruby,Ruby On Rails 3,Ruby On Rails 3.2,在我的Rails 3.2项目中,我有一个表单,可以在new.html.erbInapp/views/sites/ <%= form_for(@site) do |site_form| %> ... <div class="field"> <%= site_form.label :hash_name %><br /> <%= site_form.text_field :hash_name %> </div

在我的Rails 3.2项目中,我有一个表单,可以在
new.html.erb
In
app/views/sites/

<%= form_for(@site) do |site_form| %>
  ...
  <div class="field">
    <%= site_form.label :hash_name %><br />
    <%= site_form.text_field :hash_name %>
  </div>
  ...
  <div class="actions">
    <%= site_form.submit %>
  </div>
<% end %>
然后在用户提交后,我想在
show.html.erb

You just put in <%= params[:hash_name] %>.
您刚刚输入。

但是访问
参数[:hash_name]
不起作用。如何访问它?

只需将它们附加到选项中:


重定向到@site,:hash\u name=>params[:hash\u name]

您正在重定向到其他操作-这将重置传递给创建操作的所有参数


要么像另一个答案所建议的那样将
hash\u name
作为参数传递,要么直接从
@site
对象获取它。

不,这不起作用。仍然
params[:hash_name]
不会产生任何结果。啊,明白了。。我必须做你刚刚输入的
取而代之。尝试作为@site path的参数传递。将_重定向到您的_站点_show_path(:hash_name=>params[:hash_name])好的,直接从
@site
获取它是可行的。无论如何,如何将
hash_name
作为参数传递?我尝试了
重定向到@site,:hash\u name=>params[:hash\u name]
,然后访问'params[:hash\u name]得到的结果是空的。没有必要将其作为参数传递,但要这样做,您需要将其添加到生成的路由中,例如
重定向到site\u路径(@site,hash\u name:hash\u name)
(或者调用任何路由)。
You just put in <%= params[:hash_name] %>.