diff options
| author | Yuri Prezument | 2013-02-21 15:36:17 +0200 |
|---|---|---|
| committer | Yuri Prezument | 2013-02-21 15:54:31 +0200 |
| commit | 5f531fc1ea0b6417b162c5cce7cd8193a1231019 (patch) | |
| tree | 924e1d3cec76e9b371a7b78396059a1039646ce1 /rest_framework/fields.py | |
| parent | 8fa82822a07854a7036bfae84dfa9db3b4a0a61c (diff) | |
| download | django-rest-framework-5f531fc1ea0b6417b162c5cce7cd8193a1231019.tar.bz2 | |
Catch TypeError as well as ValueError when parsing dates, ref #699
Diffstat (limited to 'rest_framework/fields.py')
| -rw-r--r-- | rest_framework/fields.py | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/rest_framework/fields.py b/rest_framework/fields.py index e1fd1b64..86c3a837 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -472,7 +472,7 @@ class DateField(WritableField): parsed = parse_date(value) if parsed is not None: return parsed - except ValueError: + except (ValueError, TypeError): msg = self.error_messages['invalid_date'] % value raise ValidationError(msg) @@ -520,7 +520,7 @@ class DateTimeField(WritableField): parsed = parse_datetime(value) if parsed is not None: return parsed - except ValueError: + except (ValueError, TypeError): msg = self.error_messages['invalid_datetime'] % value raise ValidationError(msg) @@ -528,7 +528,7 @@ class DateTimeField(WritableField): parsed = parse_date(value) if parsed is not None: return datetime.datetime(parsed.year, parsed.month, parsed.day) - except ValueError: + except (ValueError, TypeError): msg = self.error_messages['invalid_date'] % value raise ValidationError(msg) @@ -558,7 +558,7 @@ class TimeField(WritableField): parsed = parse_time(value) assert parsed is not None return parsed - except ValueError: + except (ValueError, TypeError): msg = self.error_messages['invalid'] % value raise ValidationError(msg) |
