私には2つの形式があります。そのうちの1つには、nameフィールドとoriginal_numberというフィールドの2つのフィールドがあります。フォームがPOSTすると、別のフォームにつながります。私がやりたいことの1つは、名前フィールドとoriginal_numberフィールドを2番目のフォームの非表示の値として格納することです。
ただし、2番目の形式のvalueフィールドについて、railsがPOSTメソッドから情報を受け取るようにする方法がわかりません。
非表示フィールドの値に、最初のフォームのPOSTからの情報が使用されるようにするにはどうすればよいですか?
これが私の最初のフォームです
<%= form_tag("/find_numbers", :method => "post", :id => "new_user" ) do %>
<%= render 'shared/error_messages' %>
<%= label_tag(:name, "What Are You Tracking?") %>
<%= text_field_tag(:name) %>
<%= label_tag(:original_number, "Your Original Number") %>
<%= text_field_tag(:original_number) %>
<hr class="faded" />
<h4>Choose One Of The Methods Below To Find Your Tracking Number</h4>
<hr class="faded" />
<%= label_tag(:in_postal_code, "Enter Your Postal Code (e.g. 94117):") %>
<%= text_field_tag(:in_postal_code) %>
<%= label_tag(:near_number, "Near this other number (e.g. 4156562345)") %>
<%= text_field_tag(:near_number) %>
<%= label_tag(:contains, "Matching this pattern (e.g. 415***EPIC):") %>
<%= text_field_tag(:contains) %>
<%= submit_tag("Search", :class => "btn btn-large btn-primary") %>
<% end %>
そして、これが私の2番目のフォームで、最初のフォームから情報を受け取ります。
<%= @numbers.each do |number| %>
<%= form_tag(:controller => "phones", :action => "create" ) do %>
<%= hidden_field(:original_number) %>
<%= hidden_field(:name) %>
<%= hidden_field(:twilio_number, :value => number.phone_number) %>
<div class="found_list">
<div class="found_phone_number">
<%= label_tag(:number, number.friendly_name) %>
</div>
<div class="choose_found_number">
<%= submit_tag("Choose This Number", :class => "btn btn-large btn-success") %>
</div>
</div>
<hr>
<% end %>
<% end %>
に注意してください
<%= hidden_field(:original_number) %>
<%= hidden_field(:name) %>
最初のフォームが送信するリクエストパラメータに注意してください。
Request
Parameters:
{"utf8"=>"✓",
"authenticity_token"=>"RMvjP9PQt9hVEJE449pMqgqnFcreqvXtmZFEyU+641g=",
"name"=>"Stepan Parunashvili",
"original_number"=>"1231231234",
"in_postal_code"=>"",
"near_number"=>"",
"contains"=>"415"}
「name」=>「StepanParunashvili」を取得して:nameの非表示フィールドを埋め、「original_number」=>「1231231234」を取得して非表示フィールド:original_numberのフィールドを埋めるにはどうすればよいですか?
これまでご愛顧いただき、誠にありがとうございました。