xml-rpc - adodb - None type - DateTime type
infidel
saint.infidel at gmail.com
Fri Oct 28 12:16:57 EDT 2005
> 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:
...
More information about the Python-list
mailing list