Сначала проверьте, соответствует ли значение @ email_setting.frequency.На самом деле, если вы дадите 'email_setting','quency 'в качестве первых 2 параметров, выбранное значение будет @email_setting.frequency
.Я считаю, что это на самом деле целое число (например, 1
), и вы предоставляете строку в качестве значения параметра (например, "1"
).Это должно быть причиной, почему он не выбран.Попробуйте
<%= select('email_setting', 'frequency', [['Daily', 1],['Immediately', 2], ..], {}, :class=>'fl-space2 required size-120' %>
Также 4-й параметр выбора равен options
, а 5-й параметр - html_options
.Поэтому, если вы хотите задать html-параметры, такие как selected, class, вы должны предоставить его в качестве 5-го параметра, предоставив 4-й параметр options
в качестве пустого хеша.Если вы действительно хотите отдать выбранное также, вы должны сделать это следующим образом:
<%= select('email_setting', 'frequency', [['Daily', 1],['Immediately', 2], ..], {}, :class=>'fl-space2 required size-120', :selected => @email_setting.frequency %>
Но первого будет достаточно в вашем случае.*