ActiveSupport、Time#minus_with_coercion
>> Time.local(2008, 12, 31) - Time.local(2008, 12, 30) => 86400.0 >> require "date" => true >> Time.local(2008, 12, 31) - Date.new(2008, 12, 31) TypeError: can't convert Date into Float from (irb):3:in `-' from (irb):3 >> Time.local(2008, 12, 31) - DateTime.new(2008, 12, 31) TypeError: can't convert DateTime into Float from (irb):4:in `-' from (irb):4 >> require "rubygems" => true >> require "active_support" => true >> Time.local(2008, 12, 31) - Time.local(2008, 12, 30) => 86400.0 >> Time.local(2008, 12, 31) - Date.new(2008, 12, 31) TypeError: can't convert Date into Float from /usr/local/ruby-1.8.6/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/active_support/core_ext/time/calculations.rb:249:in `minus_without_duration' from /usr/local/ruby-1.8.6/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/active_support/core_ext/time/calculations.rb:249:in `minus_without_coercion' from /usr/local/ruby-1.8.6/lib/ruby/gems/1.8/gems/activesupport-2.1.1/lib/active_support/core_ext/time/calculations.rb:258:in `-' from (irb):8 >> Time.local(2008, 12, 31) - DateTime.new(2008, 12, 31) => Thu Jan 01 00:00:00 +0900 1970
Date との差分がなぜ出せない? Date って非推奨???