/ / Jeden tag przesyłania, dwie formy na tej samej stronie - ruby-on-rails, ruby-on-rails-3, formularze

Jeden znacznik submit, dwa formularze na tej samej stronie - ruby-on-rails, ruby-on-rails-3, formularze

Szukam najlepszego podejścia do tegoproblem. Mam dwie formularze wyszukiwania na tej samej stronie (każda szuka innego api w celu uzyskania informacji) i chciałbym mieć jeden przycisk przesyłania, a następnie odpowiednie api nazywa się zależne od tego, który formularz ma treść. Myślę, że mógłbym określić akcję kontrolera, przesyłając go w taki sposób

<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>

Oczywiście to nie działa, ponieważ zawsze otrzymuję wyniki dla parametrów wyszukiwania filmu. Czy potrzebuję warunkowego oświadczenia, aby rozpoznać, który formularz jest wypełniony? Jestem tu trochę niepewny.

Wszelkie inne potrzebne informacje proszę pytać

Każda pomoc doceniona

Dzięki

Odpowiedzi:

3 dla odpowiedzi № 1

Jeśli chcesz wykonać tę stronę kliencką (JavaScript / jQuery), nie powinno to być zbytnio zachwycające. Po kliknięciu przycisku przesyłania możesz sprawdzić, który formularz ma wartość. Prosty kod sudo:

on submitButton click:

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