> I can replace all None values with the string 'Null', there's no > problem, but I can't detect the DateTime type object I retrieve from > the database. > > I have something like this: > def xmlrpc_function(): > conn = adodb.NewADOConnection('postgres') > conn.Connect(host,user,password,database) > rs = conn.Exec("select * from table") > result = [] > i = 0 > while not rs.EOF: > row = rs.GetRowAssoc(False) > for key, value in row.items(): > if value==None: > row[key]='Null' > result.append(row) > i = i + 1 > rs.MoveNext() > rs.Close() > > print result > return result > > The problem here is that if row[key] == <type 'DateTime' object > etc...>, then I don't know what to do for detect it and make the > appropriate change to string. > > Console output: > [{'name': 'Null', 'date': <DateTime object for '2005-09-01 00:00:00.00' > at 1515f60>}] > > If you consult the python manual, you'll see that there's no 'DateTime' > type object, so I can't do something like: > > if value==DateTimeType: > ... > > I only need to know which type of data is a field for make the change > according to what can I pass through the xml-rpc.
Well, there is the possibility of passing null values through xml-rpc. I believe there is an optional keyword argument in some of the xmlrpclib functions to allow it. Basically it translates None to <nil/> in the xml. The DateTime type must be defined somewhere. Is it an adodb type? If so, you could do something like this: if type(value) == adodb.DateTime: ... -- http://mail.python.org/mailman/listinfo/python-list