Fixed #1980, #2155 -- made date, time and datetime html2python methods a bit

more consistent in their return values. All three now return None when the
passed in string cannot be converted to the required object (this is assumed
elsewhere).


git-svn-id: http://code.djangoproject.com/svn/django/trunk@3277 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
Malcolm Tredinnick 2006-07-05 07:09:53 +00:00
parent 5404e6e93b
commit c2556874d4
1 changed files with 13 additions and 10 deletions

View File

@ -773,15 +773,18 @@ class DatetimeField(TextField):
def html2python(data):
"Converts the field into a datetime.datetime object"
import datetime
date, time = data.split()
y, m, d = date.split('-')
timebits = time.split(':')
h, mn = timebits[:2]
if len(timebits) > 2:
s = int(timebits[2])
else:
s = 0
return datetime.datetime(int(y), int(m), int(d), int(h), int(mn), s)
try:
date, time = data.split()
y, m, d = date.split('-')
timebits = time.split(':')
h, mn = timebits[:2]
if len(timebits) > 2:
s = int(timebits[2])
else:
s = 0
return datetime.datetime(int(y), int(m), int(d), int(h), int(mn), s)
except ValueError:
return None
html2python = staticmethod(html2python)
class DateField(TextField):
@ -806,7 +809,7 @@ class DateField(TextField):
time_tuple = time.strptime(data, '%Y-%m-%d')
return datetime.date(*time_tuple[0:3])
except (ValueError, TypeError):
return data
return None
html2python = staticmethod(html2python)
class TimeField(TextField):