Author: bouldersprinters
Date: 2007-04-13 12:50:19 -0500 (Fri, 13 Apr 2007)
New Revision: 5006

Modified:
   django/branches/boulder-oracle-sprint/django/db/models/fields/__init__.py
Log:
boulder-oracle-sprint: Made DateField.get_db_prep_save convert datetime.date 
objects to datetime.datetime, since cx_Oracle doesn't handle datetime.date 
under Python 2.3.

Modified: 
django/branches/boulder-oracle-sprint/django/db/models/fields/__init__.py
===================================================================
--- django/branches/boulder-oracle-sprint/django/db/models/fields/__init__.py   
2007-04-13 01:19:44 UTC (rev 5005)
+++ django/branches/boulder-oracle-sprint/django/db/models/fields/__init__.py   
2007-04-13 17:50:19 UTC (rev 5006)
@@ -494,14 +494,15 @@
 
     def get_db_prep_save(self, value):
         # Casts dates into string format for entry into database.
-        if isinstance(value, datetime.datetime):
-            if settings.DATABASE_ENGINE != 'oracle':
-                # Oracle does not need a string conversion
+        if settings.DATABASE_ENGINE != 'oracle':
+            if isinstance(value, datetime.datetime):
                 value = value.date().strftime('%Y-%m-%d')
-        elif isinstance(value, datetime.date):
-            if settings.DATABASE_ENGINE != 'oracle':
-                # Oracle does not need a string conversion
+            elif isinstance(value, datetime.date):
                 value = value.strftime('%Y-%m-%d')
+        else:
+            # cx_Oracle needs a conversion to datetime.datetime instead.
+            if isinstance(value, datetime.date):
+                value = datetime.datetime.combine(value, datetime.time())
         return Field.get_db_prep_save(self, value)
 
     def get_manipulator_field_objs(self):


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To post to this group, send email to [EMAIL PROTECTED]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-updates?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to