2013-05-29 42 views

回答

0

Range#cover?來測試一個對象是否在範圍的開始和結束之間。

Ruby的相當於'[2011-01-01,2011-03-01)'::tsrange @> '2011-01-10'::timestamp是:

(Date.new(2011,01,01)..Date.new(2011,03,01)).cover? Date.new(2011,01,10) 
# => true 

它測試Date.new(2011,01,01) <= Date.new(2011,01,10) <= Date.new(2011,03,01)

0

不知道你想什麼來完成它很難回答這個問題,但你可能要檢查出的ActiveSupport寶石的CoreExtensions模塊:http://guides.rubyonrails.org/active_support_core_extensions.html

安裝的ActiveSupport與gem install activesupport或將其添加到您的Gemfile 。

用的ActiveSupport,你可以做這樣的事情:

require 'active_support/core_ext' 

10.days.from_now #=> 2013-06-08 08:37:34 -0400 
DateTime.now.beginning_of_year #=> Tue, 01 Jan 2013 00:00:00 -0400 
1.megabyte #=> 1048576 
(1..10).step(2) #=> [1, 3, 5, 7, 9] 
(1..10).overlaps?(0..7) #=> true 
Date.current.next_month #=> Sat, 29 Jun 2013 
Date.current.prev_week(:friday) #=> Fri, 24 May 2013 

我希望這有助於。

相關問題