Would it be possible to look into the fact that when storing 24:00:00
and read out it will be converted into a value of 1 day instead of 24:00:00.
Kenneth
I will look. If this is a web2py issue it will be fixed.
On Sep 14, 4:14 pm, Fred<[email protected]> wrote:
I've got an application that stores time of day and midnight
(00:00:00) is a valid time that sometimes needs to be stored and
retrieved. That used to work fine in an old release of web2py but in
a recent release (1.84.4) such values are returned by DAL as None
value rather than datetime.time(0,0) as it should be. This seems like
a defect to me. Can it be fixed, or is there some reason for doing it
this way now?
I don't know when the change occurred. It worked fine on 1.74.2. It
no longer works the way I expect in 1.84.4.
I've tested with MySQL and sqlite and the problem only occurs when
using MySQL. The time does display as 00:00:00 when I view it
directly in MySQL. Something in DAL converts it to None.
Here is a test model:
db.define_table('test1',
Field('start', 'time')
)
Here are controller functions to populate and view some test data:
def populate():
import datetime
db.test1.insert(start=datetime.time(8, 30))
db.test1.insert(start=datetime.time(0, 0))
def show():
import sys
items = db(db.test1.id> 0).select()
sys.stderr.write(str(items) + "\n")
return dict(items=items)
The latter writes the following to stderr:
test1.id,test1.start
1,08:30:00
2,<NULL>