如何在具有日期格式的简单表单字段中设置多年的集合?

时间:2013-01-03 15:50:39

标签: ruby-on-rails ruby date collections simple-form

我使用的是简单形式,但我很难正确显示date_of_birth。这可能是因为简单形式的有限文档的组合,以及我是一个新手的事实。

无论如何,我正在尝试创建一个人们可以从他们的出生日期中选择的年份的集合。

date_of_birth是DATE表单中用户的属性,需要输入年,月和日。现在我尝试更改以下年份的集合,但这会删除日期和月份的输入字段:

= simple_form_for(@user, :html => { :class => 'form-horizontal' }) do |f|
  ...
  = f.input :date_of_birth, :collection => 1910..2010

我在Ruby on Rails上使用Simple-form和HAML。所以问题是:多年来定义集合的正确方法是什么,保留日期和月份输入的默认值?

1 个答案:

答案 0 :(得分:2)

以下代码可以解决这个问题:

f.input :date_of_birth, :as => :date,
        :start_year => 1910, :end_year => 2010,
        :order => [:day, :month, :year]

(之前的代码未经测试,可能会像Mayan预测的那样导致世界末日)

您可以找到SimpeForm here的文档(尝试查找date_of_birth;)