我确信这应该很简单(可能缺少一些明显的东西),但是......我有一个毫秒的数据库字符串,我想在 Rails 中转换为美国格式的日期。想通电话.to_date
将是我的朋友,但它抛出了一个奇怪的错误。
article.date => "1379844601000"
article.date.to_date
NoMethodError: undefined method `div' for nil:NilClass
谁能建议正确的方法来做到这一点?
我确信这应该很简单(可能缺少一些明显的东西),但是......我有一个毫秒的数据库字符串,我想在 Rails 中转换为美国格式的日期。想通电话.to_date
将是我的朋友,但它抛出了一个奇怪的错误。
article.date => "1379844601000"
article.date.to_date
NoMethodError: undefined method `div' for nil:NilClass
谁能建议正确的方法来做到这一点?
将其转换为秒(milliseconds/1000)
并调用Time::at
结果:
Time.at(1379844601000/1000)
# => 2013-09-22 12:10:01 +0200
Time.strptime(milliseconds.to_s, '%Q')
// %Q - Number of milliseconds since 1970-01-01 00:00:00 UTC.
使用Date.strptime
- 但在此之前,先将其转换为秒:
sec = ('1379844601000'.to_f / 1000).to_s
Date.strptime(sec, '%s')
//Sun, 22 Sep 2013
Time.parse("1379844601000") 会给你日期和时间