Ruby on rails 如何使时间以微秒为单位
我想以微秒的精度比较时间,所以我创建了新的Ruby on rails 如何使时间以微秒为单位,ruby-on-rails,time,Ruby On Rails,Time,我想以微秒的精度比较时间,所以我创建了新的Time::DATA\u格式,如下所示 Time::DATE_FORMATS[:db_usec] = '%Y-%m-%d %H:%M:%S.%6N' 但是使用这种格式,时间是用本地时区格式化的。 我必须先更改UTC中的时间 Post.created_at.utc.to_s(:db_usec) 如何编写DATE\u格式如:db,以UTC格式设置时间 您可以通过参考 你知道ruby的strftime方法吗?是的,但我找不到如何使用UTC。日期时间默认存
Time::DATA\u格式,如下所示
Time::DATE_FORMATS[:db_usec] = '%Y-%m-%d %H:%M:%S.%6N'
但是使用这种格式,时间是用本地时区格式化的。
我必须先更改UTC中的时间
Post.created_at.utc.to_s(:db_usec)
如何编写DATE\u格式
如:db
,以UTC
格式设置时间 您可以通过参考
你知道ruby的strftime
方法吗?是的,但我找不到如何使用UTC。日期时间默认存储在UTC
,你在app.rb中使用了不同的时区吗?app.rb
用于sinatra
,对吗?我正在不同时区配置rails应用程序。但是Time.to_s(:db)
返回UTC时间的字符串。您是询问DATE\u格式
,还是询问DATA\u格式
?我明白了,我可以使用lambda方法。谢谢
Time::DATE_FORMATS[:db_usec] = ->(time) { time.utc.strftime('%Y-%m-%d %H:%M:%S.%6N') }