Rails - 如何在年份选择表单的编辑表单上设置默认值

时间:2013-05-27 01:43:55

标签: ruby-on-rails

在我的应用程序中,我让人们选择他们的工作开始年份。这在创建新作业时工作正常,但在编辑表单上,我希望用户在创建期间选择的年份自动填充。

我的代码:

<%= select_year Date.today, start_year: Time.now.year, end_year: Time.now.year - 95, field_name: :start, prefix: :job %>

目前,它每次都默认为2013。我知道我正在传递实例变量,因为其他字段会自动填充,而不是今年的下拉列表。

如何让它发挥作用?

1 个答案:

答案 0 :(得分:1)

这个答案太长了,不能放在评论中,所以我把它放在这里作为答案,但让我知道它是否回答了你的问题。

您可以手动将start_yearend_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