/ / 1つの送信タグ、同じページに2つのフォーム - ルビー・オン・レール、ルビー・オン・レール3、フォーム

1つの送信タグ、同じページに2つのフォーム - ルビー・オン・レール、ルビー・オン・レール3、フォーム

私はこれに最善のアプローチを探しています問題。私は同じページに2つの検索フォームを持っています(彼らは情報ごとに異なるAPIを検索します)。私はボタンを1つ送信したいと思いますし、関連するAPIはどのフォームにコンテンツがあるかに依存して呼び出されます。だから私はコントローラの動作を指定することができますが、各フォームに

<div class="container margin50">
<div class="row">
<div class="span6 offset3 cf formBackground">
<h1>CoverArt Finder</h1>

<h3>Search Movies</h3>
<%= form_tag main_results_path, :method => "get" %>
<%= text_field_tag "search", nil, :placeholder => "Enter Film Name Here....." %>

<h1>OR<h1>

<h3>Search Albums</h3>
<%= form_tag album_album_results_path, :method => "get" %>
<%= text_field_tag "search", nil, :placeholder => "Enter Artist Name here....." %>
<%= submit_tag "search" %>


</div>
</div>
</div>

明らかに、私は常に映画検索パラメータの結果を得るので、これはうまくいきません。どのフォームが記入されているかを認識するためにそこに条件文が必要ですか?私はここで少し不安です。

必要なその他の情報は質問してください

どんな助けにも感謝

ありがとう

回答:

回答№1の場合は3

あなたがこのクライアント側(JavaScript / jQuery)をやっても構わないのであれば、はるかに面倒ではありません。送信ボタンをクリックすると、どのフォームに値があるかを確認できます。いくつかの簡単なsudoのコード:

on submitButton click:

if formA.someValue != null
post / submit formA
else if formB.someValue != null
post / submit formB