我需要慢慢地告诉我,日期的格式是天 - 月 - 年可能吗?我传给慢性病的数据也可能是今天/昨天/ 2天前的文字.
目前慢性病给了我2 Dec 2010而不是12 Feb 2010来自12-02-2010
我能想到的唯一解决方案是在将字符串传递给慢性字符之前交换日期和月份.
require 'chronic'
puts "12-02-2010 = #{Chronic.parse('12-02-2010')}" #should be 12 Feb 2010
puts "yesteday = #{Chronic.parse('yesterday')}" #working ok
puts "Today = #{Chronic.parse('today')}" #working ok
Run Code Online (Sandbox Code Playgroud)
Dor*_*ian 15
我被问到20个月之后,今天我发现了这个问题.似乎有一种方法可以指示交换月和日.只需使用:endian_precedence选项:
:endian_precedence(Array) - 默认值:[:middle,:little] - 默认情况下,Chronic将解析"03/04/2011"作为第三个月的第四天.或者,您可以通过更改
:endian_precedenceto 来告诉Chronic将其解析为第四个月的第三天[:little, :middle]
这里的例子:
Chronic.parse('12-02-2010').strftime('%d %b %Y') #=> 02 Dec 2010
Chronic.parse('12-02-2010', :endian_precedence => [:little, :median]).strftime('%d %b %Y') #=> 12 Feb 2010
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!
多利安
| 归档时间: |
|
| 查看次数: |
2685 次 |
| 最近记录: |