1

ビューで選択したラジオ ボタンを設定して、コントローラーでアクションを実行するにはどうすればよいですか。たとえば、コントローラーに 3 つの検索アクションが定義されており、検索クエリを適切なコントローラー アクションにルーティングするラジオ ボタンをユーザーに選択してもらいたいとします。

4

1 に答える 1

2

コントローラーに 2 つのパラメーターを渡すことができます。searchたとえば、次のoptionとおりです。

<%= form_tag controller_path, method: :get do %>
  <%= text_field_tag :search, params[:search] %>
    <%= label_tag :option1 %>
    <%= radio_button_tag :option, "1" %>
    <%= label_tag :option2 %>
    <%= radio_button_tag :option, "2" %>
    <%= label_tag :option3 %>
    <%= radio_button_tag :option, "3" %>
  <%= submit_tag "Search", name: nil %>
<% end %>

そのため、URL を介して、 と 、search=および などのoption=値を送信search=some+testしますoption=1

次に、コントローラーで、これらの 2 つのパラメーターを操作できます。たとえば、次のようになります。

if params[:option] == "1"
  #do something using the params[:search]
elsif params[:option] == "2"
  #do something using the params[:search]
elsif params[:option] == "3"
  #do something using the params[:search]
else
  #do something else
...

それが役立つことを願っています...

于 2012-06-24T10:39:09.520 に答える