在我的应用程序中,我让人们选择他们的工作开始年份。这在创建新作业时工作正常,但在编辑表单上,我希望用户在创建期间选择的年份自动填充。
我的代码:
<%= select_year Date.today, start_year: Time.now.year, end_year: Time.now.year - 95, field_name: :start, prefix: :job %>
目前,它每次都默认为2013。我知道我正在传递实例变量,因为其他字段会自动填充,而不是今年的下拉列表。
如何让它发挥作用?
答案 0 :(得分:1)
这个答案太长了,不能放在评论中,所以我把它放在这里作为答案,但让我知道它是否回答了你的问题。
您可以手动将start_year
和end_year
变量设置为例如1950和Time.now.year
。然后,将select_year
helper中的第一个参数设置为实例变量,使其成为宽范围而非Date.today
之间的默认选择。
例如:
<%= select_year @instance_variable, start_year: 1950, end_year: Time.now.year, field_name: :start, prefix: :job %>
Rails文档中还提供了更多示例: http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-select_year