无法设置:selected =>用于下拉框

时间:2014-05-05 23:59:50

标签: html ruby-on-rails ruby-on-rails-4

之前已经参加调查的用户会收到一份表格,以填写他/她的地址。用户在填写调查时已经提供了他们所居住的州。

作为礼貌,我想预先选择他们选择的州的下拉菜单。我使用数组us_states来预加载下拉列表。状态的简写名称将保存到User模型中的db。以下选择不会预先选择状态,下拉框中显示的状态是数组中的第一个状态:' Alabama'。生成的HTML在下面。

<%= f.select :state, options_for_select(us_states), :selected => @user.state %>


<select id="pub_state" name="pub[state]"><option value="AL">Alabama</option>
<option value="AK">Alaska</option>
<option value="AZ">Arizona</option>
...
</select>



 def us_states
      [
        ['Alabama', 'AL'],
        ['Alaska', 'AK'],
        ['Arizona', 'AZ'],
      ...
      ]
   end

1 个答案:

答案 0 :(得分:1)

尝试将所选选项传递给options_for_select方法:

options_for_select(us_states, @user.state)