RnR используя params [] получая хеш, когда я хочу значение - PullRequest
1 голос
/ 22 марта 2011

У меня есть веб-форма, к которой я хочу взять параметр из URL-адреса и добавить его в веб-форму в качестве скрытого поля формы.

<%= 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=&gt;&quot;ref_code&quot;, :name=&gt;&quot;ref_code&quot;, :value=&gt;[&quot;k53e5&quot;, &quot;home&quot;, &quot;index2&quot;]}

Почему?Я пробовал .values, .to_s и другие способы получения по ключу, и я всегда получаю полный хэш, а не просто значение.Что я делаю неправильно?Благодаря.

1 Ответ

1 голос
/ 22 марта 2011

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' } %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...