2016-06-09 2 views
0

Ich verwende Rails 4.2.3. Ich möchte ein Auswahlmenü erstellen, aus dem die Benutzer Status auswählen können, und ich möchte, dass es als erste Option die Option "Status auswählen" enthält. Also, ich in meiner AnsichtWie erhalte ich eine erste Option zum Rendern in meinem Rails-Formular?

setzte
<%= select_tag :state, options_for_select(us_states, {:prompt => 'Select State'}) %> 

Doch was gemacht wird, ist die Liste der Staaten, nicht aber die „State Wählen Sie“ Option. Hier ist der HTML-Code, der gerendert wird ...

<select name="state" id="state"><option value="AL">Alabama</option> 
<option value="AK">Alaska</option> 
<option value="AZ">Arizona</option> 
<option value="AR">Arkansas</option> 
<option value="CA">California</option> 
<option value="CO">Colorado</option> 
<option value="CT">Connecticut</option> 
<option value="DE">Delaware</option> 
<option value="DC">District of Columbia</option> 
<option value="FL">Florida</option> 
<option value="GA">Georgia</option> 
<option value="HI">Hawaii</option> 
… 
<option value="WI">Wisconsin</option> 
<option value="WY">Wyoming</option></select> 

Was muss ich noch tun, um die erste Option zum Rendern zu erhalten?

Antwort

0

Es gibt keine :prompt Option für die options_for_select Helfer, die Sie in der Dokumentation sehen:

http://api.rubyonrails.org/classes/ActionView/Helpers/FormOptionsHelper.html#method-i-options_for_select

Stattdessen würde ich die Eingabeaufforderung explizit in der Liste der Staaten nur hinzufügen:

<%= select_tag :state, options_for_select([["Select State", nil], *us_states]) %> 

Ergebnis:

<select name="state" id="state"> 
    <option value="">Select State</option> 
    <option value="AL">Alabama</option> 
    <option value="AK">Alaska</option> 
    ... 
</select> 
0

Dies sollte funktionieren:

<%= select_tag :state, options_for_select(us_states), {:prompt => 'Select State'} %> 
Verwandte Themen