1

我在 simple_form_for 中使用了一个简单的 date_field,它工作正常。我只需要调整它,以便它只显示 12 年前和之前的日期。IE 没有人应该能够输入过去 12 年内的日期。

这是我的代码行。

<%= f.date_field :birthday, start_year: Time.now.year - 100, 
          end_year: Time.now.year-12, :default => @profile.birthday %>

“start_year:”和“end_year”对我不起作用(也许我用错了?)。用户仍然可以输入无效日期。

有谁知道我应该尝试的任何其他事情?

4

1 回答 1

3

在模型中使用验证。

 validates_inclusion_of :birthday, 
   in: Date.civil(1950, 1, 1)..Date.today-14.years,
   message: "Must be between 1950 and 2000 and now"

当然,这是一个示例,您可以将其设置为几乎适合您需要的任何内容。

于 2014-08-19T18:27:35.077 回答