Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.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 on rails Rails-有没有一种简单的方法来检查英国夏季时间和格林尼治标准时间是否不同?_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails Rails-有没有一种简单的方法来检查英国夏季时间和格林尼治标准时间是否不同?

Ruby on rails Rails-有没有一种简单的方法来检查英国夏季时间和格林尼治标准时间是否不同?,ruby-on-rails,ruby,Ruby On Rails,Ruby,我一直在阅读,但列出的方法似乎不再有效: Time.zone = 'London' Time.now = 2017-04-10 15:47:45 +0100 Time.zone = 'Cairo' Time.now = 2017-04-10 15:47:45 +0100 这显然是错误的。有没有简单的方法让我检查一下?我的最终结果是尝试看看伦敦时区是否有+0100,我可以简单地计算一下Time.now.include吗?(“+0100”) 提前谢谢 列出的方法似乎不再有效 您使用了错误的方法:

我一直在阅读,但列出的方法似乎不再有效:

Time.zone = 'London'
Time.now = 2017-04-10 15:47:45 +0100
Time.zone = 'Cairo'
Time.now = 2017-04-10 15:47:45 +0100
这显然是错误的。有没有简单的方法让我检查一下?我的最终结果是尝试看看伦敦时区是否有+0100,我可以简单地计算一下Time.now.include吗?(“+0100”)

提前谢谢

列出的方法似乎不再有效

您使用了错误的方法:

  • 是一个Ruby方法,返回一个“普通的”
    Time
    实例

  • 是一个Rails方法,返回一个
    ActiveSupport::TimeWithZone
    实例

还有一条捷径:

另一个时区:

Time.zone = 'Cairo'

Time.zone.now
#=> Mon, 10 Apr 2017 16:54:35 EET +02:00
我的最终结果是尝试看看伦敦时区是否有+0100

在这种情况下,“+0100”表示。正确的方法是:

Time.zone = 'Cairo'

Time.zone.now
#=> Mon, 10 Apr 2017 16:54:35 EET +02:00
t1 = Time.zone.parse('2017-03-26')   #=> Sun, 26 Mar 2017 00:00:00 GMT +00:00
t2 = Time.zone.parse('2017-03-27')   #=> Mon, 27 Mar 2017 00:00:00 BST +01:00

t1.dst?   #=> false
t2.dst?   #=> true