2016-06-09 7 views
0

Я использую Rails 4.2.3. Я хочу создать меню выбора, из которого люди могут выбирать состояния, и я бы хотел, чтобы у него была опция «Выбрать состояние» в качестве первого варианта. Таким образом, на мой взгляд, я поставилКак получить первый вариант рендеринга в моей форме Rails?

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

Однако то, что оказывается в список государств, но не «Выберите государства» вариант. Вот HTML, который визуализируется ...

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

Что еще мне нужно сделать, чтобы получить первый вариант рендеринга?

ответ

0

Там нет :prompt варианта для options_for_select помощника, который вы можете увидеть в документации:

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

Вместо этого, я бы просто добавить приглашение явно в список состояний:

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

Результат:

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

Должно работать:

<%= select_tag :state, options_for_select(us_states), {:prompt => 'Select State'} %> 
Смежные вопросы