Update of /cvsroot/modeling/ProjectModeling/Modeling
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15451/Modeling
Modified Files:
ChangeLog Attribute.py
Log Message:
Fixed: Attribute.convertStringToAttributeType() failed when python db-adapters, such as mysqldb, already return values under the a date type
Index: Attribute.py
===================================================================
RCS file: /cvsroot/modeling/ProjectModeling/Modeling/Attribute.py,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** Attribute.py 20 Jul 2004 06:21:36 -0000 1.23
--- Attribute.py 25 Feb 2006 15:46:25 -0000 1.24
***************
*** 72,75 ****
--- 72,82 ----
except ImportError:
pass
+ try:
+ from time import localtime
+ from datetime import date, datetime
+ avail_types.append( type(datetime(*localtime(0)[:3])) )
+ avail_types.append( type(date(*localtime(0)[:3])) )
+ except ImportError:
+ pass
return avail_types
***************
*** 363,370 ****
# if type(_tmp)!=types.TupleType: raise ValueError
# return _tmp
! if self.type()=='DateTime': return DateFrom(aValue)
! except ValueError, TypeError:
raise ModelError, \
! "Invalid default value ('%s') for attribute '%s' type '%s' "%(aValue, self._name,self.type())
def setScale(self, scale):
--- 370,382 ----
# if type(_tmp)!=types.TupleType: raise ValueError
# return _tmp
! if self.type()=='DateTime':
! if type(aValue) not in date_types():
! # Some python db-adapters, such as MySQLdb, already return the
! # appropriate type
! return DateFrom(aValue)
! return aValue
! except (ValueError, TypeError):
raise ModelError, \
! "Invalid value ('%s') for attribute '%s' type '%s' "%(aValue, self._name,self.type())
def setScale(self, scale):
***************
*** 536,540 ****
return _entity.name()+'.'+self.name()
else:
! return None
## XML
--- 548,552 ----
return _entity.name()+'.'+self.name()
else:
! return ""
## XML
Index: ChangeLog
===================================================================
RCS file: /cvsroot/modeling/ProjectModeling/Modeling/ChangeLog,v
retrieving revision 1.9
retrieving revision 1.10
diff -C2 -d -r1.9 -r1.10
*** ChangeLog 25 Feb 2006 13:26:05 -0000 1.9
--- ChangeLog 25 Feb 2006 15:46:25 -0000 1.10
***************
*** 1,4 ****
--- 1,10 ----
2006-02-25 Sebastien Bigaret <Seb...@en...>
+ * Attribute.py (date_types): added python date and datetime types
+ when available
+ (Attribute.convertStringToAttributeType): failed when python
+ db-adapters, such as mysqldb, already return values under a date
+ type
+
* DatabaseContext (DatabaseContext methods: availableChannel,
hasBusyChannels, performChanges, prepareForSaveWithCoordinator,
|