接受Text_Field中的日期而不是date_select

时间:2011-12-22 23:27:48

标签: ruby-on-rails ruby-on-rails-3

我目前有一个表格让你设定一个事件的日期。我正在使用date_select表单助手,所以我有3个选择下拉列表。

我想也许我可以将它切换到text_field并格式化日期并使用正则表达式进行验证,但似乎我只能将其输入为dd / mm / yyyy。例如,如果我输入12/25/2012 - 它会返回一个错误(空白,因为我猜它没有其他错误类型?)我可以接受格式为mm / dd / yyyy吗?

1 个答案:

答案 0 :(得分:1)

您可以使用Date.parse(the_textfield),不需要编写自己的正则表达式。 rdoc在这里如何运作:

http://apidock.com/ruby/Date/parse/class

您可以在模型中将此作为保存前方法添加:

before_save :parse_date_string
def parse_date_string
  my_date = Date.parse(my_date) if my_date.is_a? String
end