diff options
| author | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2006-07-05 07:09:53 +0000 |
|---|---|---|
| committer | Malcolm Tredinnick <malcolm.tredinnick@gmail.com> | 2006-07-05 07:09:53 +0000 |
| commit | c2556874d4d3e2631b082f567d28cc1d1e1dfee1 (patch) | |
| tree | 35ee93e9e319cd343da59a8f889ca2492af2eb2e /django/forms/__init__.py | |
| parent | 5404e6e93bd46abb1b55bebfe23f2cdbeb373c93 (diff) | |
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
Diffstat (limited to 'django/forms/__init__.py')
| -rw-r--r-- | django/forms/__init__.py | 23 |
1 files changed, 13 insertions, 10 deletions
diff --git a/django/forms/__init__.py b/django/forms/__init__.py index 1e9cb2c596..4907bd76f7 100644 --- a/django/forms/__init__.py +++ b/django/forms/__init__.py @@ -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): |
