在Ruby on Rails中创建年份下拉框FormBuilder

Dan*_*Dan 2 ruby-on-rails date formbuilder ruby-on-rails-3

我正在尝试创建一个具有年属性的数据库,但我遇到了一些困难.我创建了脚手架并尝试使用以下代码修改_form.html.erb:

<%= f.date_select :year, :start_year=>2000, :end_year=>Time.now.year %>
Run Code Online (Sandbox Code Playgroud)

试图运行rails服务器并给我这个错误:

1 error(s) on assignment of multiparameter attributes
Run Code Online (Sandbox Code Playgroud)

我意识到我只想要一年而不是一天或一个月.有没有办法做到这一点?我试过:discard_month => true但是只是隐藏它,但仍然存储它.

提前致谢

apn*_*ing 6

做类似的事情:

<%= f.date_select :year, :order => [:year], :start_year => 2000, :end_year => Time.now.year, :prompt => {:year => "Select year"} %>
Run Code Online (Sandbox Code Playgroud)

因为你的year领域是一个int而不是datetime:

<%= f.select :year, (2000..Time.now.year).to_a, :include_blank => {:year => "Select year"} %>
Run Code Online (Sandbox Code Playgroud)