Ruby on rails 如何在rails选择选项中显示一系列值,同时仍然只选择其中一个选项?

Ruby on rails 如何在rails选择选项中显示一系列值,同时仍然只选择其中一个选项?,ruby-on-rails,Ruby On Rails,我现在有一个select语句,看起来是这样的: <%= f.select :assessmentYear, (Time.now.year-1..Time.now.year+1).to_a, :prompt=>true %> true%> 不过,我需要它在选择中显示一个范围。如2012-2013、2013-2014等。 但它仍应保存与现在相同的价值(例如,2012-2013年将保存2012年,2013-2014年将保存2013年,等等) 这是一个用户的请求-我的申请是针对一

我现在有一个select语句,看起来是这样的:

<%= f.select :assessmentYear, (Time.now.year-1..Time.now.year+1).to_a, :prompt=>true  %>
true%>
不过,我需要它在选择中显示一个范围。如2012-2013、2013-2014等。 但它仍应保存与现在相同的价值(例如,2012-2013年将保存2012年,2013-2014年将保存2013年,等等)

这是一个用户的请求-我的申请是针对一个学术机构的,由于学年被分为两个日历年,因此在引用单个值时可能会产生混淆


非常感谢

您可以有一个助手,它返回一个数组,如
[[['year-year+1','year'],…]
。类似于:

def academic_years 
  years = Array.new
  (Time.now.year-1..Time.now.year+1).each do |year|
     years << ["#{year}-#{year+1}", year]
  end
  return years
end

非常感谢!这正是我需要的。
<%= f.select :assessmentYear, options_for_select( academic_years ), :prompt=>true  %>
<option value="2012">2012-2013</option>
<option value="2013">2013-2014</option>
...