它看起來像ActiveSupport確實提供了解析方法您正在尋找(我一直在尋找太),畢竟! -至少,如果您要字符串解析為標準,通過ISO - 8601格式( :db
式)的日期。
如果你想要的日期來分析已在您的本地時區,它真的很容易!
> Time.zone.parse('2009-09-24 08:28:43')
=> Thu, 24 Sep 2009 08:28:43 PDT -07:00
> Time.zone.parse('2009-09-24 08:28:43').class
=> ActiveSupport::TimeWithZone
而時區感知時間可以很容易地轉換為 UTC
> Time.zone.parse('2009-09-24 08:28:43').utc
=> 2009-09-24 15:28:43 UTC
或其他時區:
> ActiveSupport::TimeZone.us_zones.map(&:name)
=> ["Hawaii", "Alaska", "Pacific Time (US & Canada)", "Arizona", "Mountain Time (US & Canada)", "Central Time (US & Canada)", "Eastern Time (US & Canada)", "Indiana (East)"]
> Time.zone.parse('2009-09-24 08:28:43').utc.in_time_zone('Eastern Time (US & Canada)')
=> Thu, 24 Sep 2009 11:28:43 EDT -04:00
如果你想要日期字符串解析是在星期六,另一方面,它看起來並不像有任何方法來分析它直接進入TimeWithZone,但我能夠解決這是第一次使用DateTime.strptime ...
如果你想要的日期是在星期六來分析,你想讓它留為 UTC,可以使用:
> DateTime.strptime('2009-09-24 08:28:43', '%Y-%m-%d %H:%M:%S').to_time
=> 2009-09-24 08:28:43 UTC
如果你想要的日期是在星期六來分析,你希望它轉換為您的默認時區,你可以使用:
> DateTime.strptime('2009-09-24 08:28:43', '%Y-%m-%d %H:%M:%S').to_time.in_time_zone
=> Thu, 24 Sep 2009 01:28:43 PDT -07:00
它看起來像它甚至可以分析其它格式,如奇怪的格式,時間#to_s生產:
irb -> Time.zone.parse('Wed, 23 Sep 2009 02:18:08').to_s(:db)
=> "2009-09-23 09:18:08"
irb -> Time.zone.parse('Wed, 23 Sep 2009 02:18:08 EDT').to_s(:db)
=> "2009-09-23 06:18:08"
我很感動。
下面是一些例子從http://api.rubyonrails.org/classes/ActiveSupport/TimeWithZone.html :
Time.zone = 'Eastern Time (US & Canada)' # => 'Eastern Time (US & Canada)'
Time.zone.local(2007, 2, 10, 15, 30, 45) # => Sat, 10 Feb 2007 15:30:45 EST -05:00
Time.zone.parse('2007-02-01 15:30:45') # => Sat, 10 Feb 2007 15:30:45 EST -05:00
Time.zone.at(1170361845) # => Sat, 10 Feb 2007 15:30:45 EST -05:00
Time.zone.now # => Sun, 18 May 2008 13:07:55 EDT -04:00
Time.utc(2007, 2, 10, 20, 30, 45).in_time_zone # => Sat, 10 Feb 2007 15:30:45 EST -05:00
更多文檔的鏈接以供參考:
- api.rubyonrails.org /班/ ActiveSupport / TimeWithZone.html
-
api.rubyonrails.org /班/ ActiveSupport / TimeZone.html
哎呀! 您的編輯無法提交,是因為:
* sorry, new users can only post a maximum of one hyperlink
嗯,好吧,我想我不會鏈接到這些網址,然後。 我不知道它為什麼認為我是一個“新用戶”之中。
#: 1474238 ruby ruby-on-rails activesupport time parsing User: Tyler Rick
相关推荐
validates_timeliness - ActiveModel和Rails的日期与时间验证插件,持多个ORM和允许自定义日期/时间格式。
local_time - Rails引擎向用户用当地时间格式来显示时间和日期
完全验证Rails 4.x和Rails 5.0的日期,时间和日期时间。 这是的叉子,带有和补丁。 我添加了与各种Rails 4.x版本以及STI和性能修复程序的其他兼容性。 特征 将日期,时间和日期时间的验证添加到ActiveModel 处理...
16.6 时间和日期的扩展 208 16.7 Ruby符号的扩展 210 16.8 with_options 211 16.9 Unicode支持 211 第17章 数据迁移 215 17.1 创建和运行迁移任务 216 17.2 剖析迁移任务 218 17.3 表的管理 221 17.4 数据迁移任务 ...
内容 可以轻松实现) 单独的单点登录应用中的角色用户积分(如StackOverflow) 时间和日期天气,股票价格,用户名中的元音或其他您可以使用Ruby查看的内容您要做的就是定义授权者所需的方法。 您具有普通Ruby类的...
TimeExtensions 是使用 Swift 编写的库,提供一个优雅而简单的,易于理解的处理时间的语法,灵感大部分来源于 Ruby on Rails 的 ActiveSupport。 获取时间间隔 10.minutes 2.5.seconds 5.days 10.minutes 30....
nodejs是单进程单线程模型,跟php,ruby这些不同,nodejs所有的请求都会是同一个线程处理。于是会发生这种情况,第一个请求执行了一半的时候,下一个请求已经过来了。如果我们使用传统的打日志的方法。可能a请求打了...
原书名:Foundations of Ajax 原出版社: Apress 作者: (美)Ryan Asleson,Nathaniel T.Schutta 译者: 金灵 等 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ...b.2.9 ruby on rails ... 253
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...
业界提供了OAUTH的多种实现如PHP,JavaScript,Java,Ruby等各种语言开发包,大大节约了程序员的时间,因而OAUTH是简易的。目前互联网很多服务如Open API,很多大头公司如Google,Yahoo,Microsoft等都提供了OAUTH...