summaryrefslogtreecommitdiff
path: root/django/forms/fields.py
diff options
context:
space:
mode:
Diffstat (limited to 'django/forms/fields.py')
-rw-r--r--django/forms/fields.py10
1 files changed, 4 insertions, 6 deletions
diff --git a/django/forms/fields.py b/django/forms/fields.py
index dd23b12e5c..67564218ab 100644
--- a/django/forms/fields.py
+++ b/django/forms/fields.py
@@ -6,9 +6,7 @@ import copy
import datetime
import os
import re
-import time
import urlparse
-import warnings
from decimal import Decimal, DecimalException
try:
from cStringIO import StringIO
@@ -20,7 +18,6 @@ from django.core import validators
from django.utils import formats
from django.utils.translation import ugettext_lazy as _
from django.utils.encoding import smart_unicode, smart_str, force_unicode
-from django.utils.functional import lazy
# Provide this import for backwards compatibility.
from django.core.validators import EMPTY_VALUES
@@ -344,7 +341,8 @@ class BaseTemporalField(Field):
try:
datetime_str, usecs_str = value.rsplit('.', 1)
usecs = int(usecs_str)
- return datetime.datetime(*time.strptime(datetime_str, format[:-3])[:6]+(usecs,))
+ dt = datetime.datetime.strptime(datetime_str, format[:-3])
+ return dt.replace(microsecond=usecs)
except ValueError:
continue
raise ValidationError(self.error_messages['invalid'])
@@ -373,7 +371,7 @@ class DateField(BaseTemporalField):
return super(DateField, self).to_python(value)
def strptime(self, value, format):
- return datetime.date(*time.strptime(value, format)[:3])
+ return datetime.datetime.strptime(value, format).date()
class TimeField(BaseTemporalField):
widget = TimeInput
@@ -394,7 +392,7 @@ class TimeField(BaseTemporalField):
return super(TimeField, self).to_python(value)
def strptime(self, value, format):
- return datetime.time(*time.strptime(value, format)[3:6])
+ return datetime.datetime.strptime(value, format).time()
class DateTimeField(BaseTemporalField):
widget = DateTimeInput