我想在 Rails 应用程序中存储一些数据的日期。用户可以选择一个日期,有时它会是特定的(如“2010 年 1 月 1 日”),但有时他只知道月份和年份(“2010 年 1 月”),甚至只知道年份(2010 年)。在 Rails 中是否有标准方法来存储(并提供输入)?我知道我可以在模型中创建 3 个单独的列,但也许有一个很好的宝石。
问问题
438 次
2 回答
2
我创建了一个 gem 来做到这一点:
http://rubygems.org/gems/date_time_precision
例如:
require 'date_time_precision/format/string'
Date.new(2010, 1).to_s(:long)
# => "January 2010"
于 2013-09-15T22:22:01.420 回答
0
你听说过慢性宝石吗?
这些是 Github 文档中的一些使用示例。
require 'chronic'
Time.now #=> Sun Aug 27 23:18:25 PDT 2006
Chronic.parse('tomorrow')
#=> Mon Aug 28 12:00:00 PDT 2006
Chronic.parse('monday', :context => :past)
#=> Mon Aug 21 12:00:00 PDT 2006
Chronic.parse('this tuesday 5:00')
#=> Tue Aug 29 17:00:00 PDT 2006
Chronic.parse('this tuesday 5:00', :ambiguous_time_range => :none)
#=> Tue Aug 29 05:00:00 PDT 2006
Chronic.parse('may 27th', :now => Time.local(2000, 1, 1))
#=> Sat May 27 12:00:00 PDT 2000
Chronic.parse('may 27th', :guess => false)
#=> Sun May 27 00:00:00 PDT 2007..Mon May 28 00:00:00 PDT 2007
Chronic.parse('6/4/2012', :endian_precedence => :little)
#=> Fri Apr 06 00:00:00 PDT 2012
Chronic.parse('INVALID DATE')
#=> nil
于 2013-09-15T22:12:21.627 回答