我有一个网页表单,我想从网址中获取一个参数,并将其作为表单上的隐藏字段添加到网络表单中。
<%= form_tag(:action => 'create') do |f| %>
<%= text_field_tag :email,"Your email address...", :class => "text", :id => "email", :name => 'email',
:onFocus => "change(this,'#222222'); this.value=''; this.onfocus=null;", :size => "26" %>
<%= hidden_field_tag :ref_code, :id => 'ref_code', :name => 'ref_code', :value => params[:ref_code] %>
<%= submit_tag "Enter To Win", :class => "button-positive submit" %>
<% end %>
如果我只是做:
<%= params[:ref_code] %>
我得到了我想要的值,这是一个五个字符的字母数字,但是当我在表单中使用它时,我得到完整的哈希描述:
{:id=>"ref_code", :name=>"ref_code", :value=>["k53e5", "home", "index2"]}
为什么呢?我尝试了.values,.to_s和其他按键获取的方式,我总是得到完整的哈希而不仅仅是值。我究竟做错了什么?感谢。
答案 0 :(得分:1)
http://apidock.com/rails/ActionView/Helpers/FormTagHelper/hidden_field_tag
hidden_field_tag(name, value = nil, options = {})
<%= hidden_field_tag :ref_code, params[:ref_code], { :id => 'ref_code', :name => 'ref_code' } %>