Rails Radioknopverbinding met controlleractie

Hoe kan ik een geselecteerd keuzerondje instellen om een ​​actie uit te voeren in mijn controller. Ik heb bijvoorbeeld 3 zoekacties gedefinieerd in mijn controller en ik zou graag willen dat de gebruiker een keuzerondje selecteert dat de zoekopdracht naar de juiste controlleractie leidt.

1

1 antwoord

U kunt twee params doorgeven aan uw controller, de search en de optie bijvoorbeeld:

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

Dus, het stuurt via de URL de zoek = en de optie = met enkele waarden, bijvoorbeeld zoeken = enkele + test en option = 1 .

Dan kun je in je controller met deze twee params werken ... bijvoorbeeld:

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

Ik hoop dat het helpt...

2
toegevoegd
Dank u zeer!
toegevoegd de auteur Yogzzz, de bron