Rails转换日期格式

5

我在应用程序中有一个表单输入框,可以接受格式为DD/MM/YYYY的日期,例如02/05/2012表示2012年5月2日。

我最好的方法是将其转换为适合通过ActiveRecord添加到数据库中的格式?

在添加到数据库之前,是否有一种简单的方法将02/05/2012转换为05/02/2012?

3个回答

8

5

针对这种特定格式,您可以调用DateTime.parse

DateTime.parse("02/05/2012") # => Thu, 02 May 2012 00:00:00 +0000

谢谢Stefan。但是,当我使用19/05/2012时,它无法工作。我认为它期望日期格式为MM/DD/YYYY,而不存在第19个月。 - Jack
在我的系统上运行良好。也许这取决于区域设置。 - Stefan

3

我两年后遇到了同样的问题,这是我的解决方案。

在你的视图中使用: <%= l article.created_at, format: :euro %> **确保添加l

然后在 /config/locales/en.yml 中添加:

en:

 time:

  formats:

    euro: "%d/%m/%Y"           

您也可以添加 euro: "%D" 以显示美国日期格式。

谢谢。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接