如何在Rails select helper block中设置默认值?
<div class="field">
<label>Gender</label>
<%= f.select :gender, [], { prompt: 'Select gender', selected: 'Female' }, { :class => 'ui selection dropdown' } do %>
<% Subject.genders.keys.each do |c| %>
<%= content_tag(:option, value: c, class: 'item') do %>
<%= content_tag(:i, '', class: "#{c.downcase} icon") %>
<%= content_tag(:span, c) %>
<% end %>
<% end %>
<% end %>
</div>
我尝试使用:selected
选项设置它,但它不起作用。
答案 0 :(得分:1)
我不认为f.select是否存在选择。
您可以使用options_for_select(values, value_selected)
建议: 您可以创建名为app / helpers / select_helper.rb的文件。在此文件中,您可以创建如下函数:
def subject_genders_values
Subject.genders.each do |c|
[c.value, c.value]
end
end
您的函数subject_genders_values可以重复使用。每次如果你想要一个选择框,你可以在这个文件中创建你的功能。 注意:添加
include SelectHelper
在application_helper.rb
中您的观点:
<%= f.select :gender,options_for_select(subject_genders_values, 'Female') %>
如果选项是列表的一部分,则会选择选项。