2017-03-18 5 views
0

Das ist meine Form istEinfache Form nicht zu senden Parameter

<%= simple_form_for '', url: temperature2_path, :method => :get do |f| %> 
     <%= f.input :search, collection: @vehicles, :label_method => :objectno, :label => 'Vehiculo', :selected => params[:search] %> 
     <%= f.button :submit, value: "Buscar",:name => nil%> 
    <% end %> 

Wenn ich die auf der Konsole p @vehicles drucken, können Sie sehen, dass es Werte

#<ActiveRecord::Relation [#<Message id: nil, objectno: "Carlos">, #<Message id: nil, objectno: "HLPN">, #<Message id: nil, objectno: "024">, #<Message id: nil, objectno: "HLMAW">]> 

Allerdings, wenn ich Datensatz auswählen aus der Sammlung @vehicles die URL kein Fahrzeug enthält:

http://0.0.0.0:3000/temperature2?search= 

ich erwartete

http://0.0.0.0:3000/temperature2?search=Carlos 

Was ich vermisse?

+0

Ich denke, Sie brauchen Namensattribut im Eingabeelement – Vbp

Antwort

1

Scheint, dass Sie value Eigenschaften in Ihrem generierten HTML-Formular fehlen. Ich denke, Sie müssen die label_method zu value_method in Ihrem Formular ändern.

<%= f.input :search, collection: @vehicles, :value_method => :objectno, :label => 'Vehiculo', :selected => params[:search] %>