From 17fee001a9d40aaed4c62f1e159242ca47182c2b Mon Sep 17 00:00:00 2001
From: Jeremy Kemper <jeremy@bitsweat.net>
Date: Sun, 28 Jan 2007 07:36:34 +0000
Subject: :db format for Date#to_s

git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@6060 5ecf4fe2-1ee6-0310-87b1-e25e094e27de
---
 activesupport/CHANGELOG                                       | 3 +++
 activesupport/lib/active_support/core_ext/date/conversions.rb | 3 ++-
 activesupport/test/core_ext/date_ext_test.rb                  | 1 +
 3 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG
index 5c0e062403..df9474bb3f 100644
--- a/activesupport/CHANGELOG
+++ b/activesupport/CHANGELOG
@@ -1,5 +1,8 @@
 *SVN*
 
+* :db format for Date#to_s [Jeremy Kemper]
+    Date.new(2007, 1, 27).to_s(:db) # => '2007-01-27'
+
 * Added :instance_writer option to #mattr_writer/accessor, #cattr_writer/accessor, and #class_inheritable_writer to skip the creation of the instance writer.  [Rick]
 
 * Added Hash#to_query to turn a hash of values into a form-encoded query string [Nicholas Seckar]
diff --git a/activesupport/lib/active_support/core_ext/date/conversions.rb b/activesupport/lib/active_support/core_ext/date/conversions.rb
index 4b9388dacd..8f48ccacde 100644
--- a/activesupport/lib/active_support/core_ext/date/conversions.rb
+++ b/activesupport/lib/active_support/core_ext/date/conversions.rb
@@ -5,7 +5,8 @@ module ActiveSupport #:nodoc:
       module Conversions
         DATE_FORMATS = {
           :short => "%e %b",
-          :long  => "%B %e, %Y"
+          :long  => "%B %e, %Y",
+          :db => "%Y-%m-%d"
         }
 
         def self.included(klass) #:nodoc:
diff --git a/activesupport/test/core_ext/date_ext_test.rb b/activesupport/test/core_ext/date_ext_test.rb
index 56161954a0..055b3659fd 100644
--- a/activesupport/test/core_ext/date_ext_test.rb
+++ b/activesupport/test/core_ext/date_ext_test.rb
@@ -4,6 +4,7 @@ class DateExtCalculationsTest < Test::Unit::TestCase
   def test_to_s
     assert_equal "21 Feb",            Date.new(2005, 2, 21).to_s(:short)
     assert_equal "February 21, 2005", Date.new(2005, 2, 21).to_s(:long)
+    assert_equal "2005-02-21",        Date.new(2005, 2, 21).to_s(:db)
   end
 
   def test_to_time
-- 
cgit v1.2.3