ruby 中的方法链是如何工作的?作为 C# 开发人员,当我看到 1.hour.from_now.localtime
时,我不确定发生了什么。这段代码是如何工作的?
<%= 1.hour.from_now.localtime %>
最佳答案
1
是一个响应小时的对象
pry(main)> 1.class
=> Fixnum
.hour
是 Fixnum 上的一种方法,将其表示为一个小时(通过将其更改为 3600)
pry(main)> 1.hour.class
=> Fixnum
pry(main)> 1.hour.to_i
=> 3600
.from_now
将 3600
的类型更改为 DateTime,即 future 3600 秒。
pry(main)> 1.hour.from_now
=> Mon, 22 Sep 2014 19:57:05 UTC +00:00
pry(main)> 1.hour.from_now.class
=> ActiveSupport::TimeWithZone
.localtime
将 TimeZone 更改为系统本地时间:
pry(main)> 1.hour.from_now.localtime
=> 2014-09-22 12:57:41 -0700
关于ruby-on-rails - Ruby 中的方法链是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25981099/