Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何设置ruby Gem Chronic';将默认时区设置为不带轨道的特定时区 问题:_Ruby_Sinatra_Chronic - Fatal编程技术网

如何设置ruby Gem Chronic';将默认时区设置为不带轨道的特定时区 问题:

如何设置ruby Gem Chronic';将默认时区设置为不带轨道的特定时区 问题:,ruby,sinatra,chronic,Ruby,Sinatra,Chronic,默认情况下,慢性gem使用系统时区作为默认时区 他们在这里提到(),我可以使用ActiveSupports Time.zone来改变这一点。但是我没有使用Rails,我使用的是Sinatra,包括主动支持,只是为了利用timezone类,这似乎是不必要的 我还能怎么做 我想做的事。 我正在使用Chronic进行系统报告/仪表盘和统计 服务器在utc时间将时间戳存储在数据库中创建的_at字段中。 当然,我们以PDT的形式运行我们的报告 我想将默认时区设置为美国/洛杉矶。 以便: 我怎样才能做到这一

默认情况下,慢性gem使用系统时区作为默认时区

他们在这里提到(),我可以使用ActiveSupports Time.zone来改变这一点。但是我没有使用Rails,我使用的是Sinatra,包括主动支持,只是为了利用timezone类,这似乎是不必要的

我还能怎么做

我想做的事。 我正在使用Chronic进行系统报告/仪表盘和统计

服务器在utc时间将时间戳存储在数据库中创建的_at字段中。 当然,我们以PDT的形式运行我们的报告

我想将默认时区设置为美国/洛杉矶。 以便:


我怎样才能做到这一点呢?

我会将此作为一条评论发表,因为我不太愿意为基本上是正确的东西获得任何荣誉,但我在评论中没有足够的空间。
TZ
环境变量在这些情况下很有用。看看这个:

def with_time_zone(tz_name)
  prev_tz = ENV['TZ']
  ENV['TZ'] = tz_name
  yield
ensure
  ENV['TZ'] = prev_tz
end

with_time_zone('US/Pacific') { Chronic.parse("1 days ago at midnight") }
# => 2013-05-27 08:00:00 0100
with_time_zone('US/Pacific') { Chronic.parse("1 days ago at midnight").localtime }
# => 2013-05-27 00:00:00 -0700

您可以将服务器的localtime设置为正确的区域,让整个应用程序以您喜欢的方式运行
TZ
var设置,或者在退出时操纵时间。

我会将此作为一条评论发布,因为我不愿意为基本上是什么而获得任何荣誉,但我在评论中没有足够的空间。
TZ
环境变量在这些情况下很有用。看看这个:

def with_time_zone(tz_name)
  prev_tz = ENV['TZ']
  ENV['TZ'] = tz_name
  yield
ensure
  ENV['TZ'] = prev_tz
end

with_time_zone('US/Pacific') { Chronic.parse("1 days ago at midnight") }
# => 2013-05-27 08:00:00 0100
with_time_zone('US/Pacific') { Chronic.parse("1 days ago at midnight").localtime }
# => 2013-05-27 00:00:00 -0700
您可以将服务器的localtime设置为正确的区域,让整个应用程序以您喜欢的方式运行
TZ
var设置,或者在退出时操纵时间