我正在尝试按日期比较行。首先,我用这样的字符串日期保存数据:
2/10/15 23:37
进入我的 PostgreSQL 数据库。
我可以看到我的日期已保存,现在看起来像这样:2015-02-10 23:37:00
,区域设置字段设置为 lc_collate = en_US.UTF -8
.
现在我使用同一个文件,我想比较日期字段,看它是否相同(应该是!),但是 Ruby 读取 2/10/15 23:37
作为 0002-10-15 13:01:00 +0800
。
我也在尝试这个:
Date.strptime(myDate, "%m/%d/%Y")
但结果是 0015-02-12
。
如何强制 Ruby 以与我的数据库相同的方式读取我的输入字符串?我试图在我的 application.rb 中设置 config.i18n.default_locale = 'en-US'
但它没有帮助。
最佳答案
由于您提供的是两位数的年份,因此它应该是:
Date.strptime(myDate, "%m/%d/%y") # Note the lower case y
如果时间也很重要,你应该使用:
DateTime.strptime(myDate, "%m/%d/%y %H:%M")
关于ruby-on-rails - Ruby 日期时间解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30169450/