mirror of
https://github.com/django/django.git
synced 2025-10-24 22:26:08 +00:00
Fixed #29089 -- Avoided redundant date parsing in SelectDateWidget.format_value().
This commit is contained in:
@@ -1004,7 +1004,10 @@ class SelectDateWidget(Widget):
|
|||||||
if isinstance(value, (datetime.date, datetime.datetime)):
|
if isinstance(value, (datetime.date, datetime.datetime)):
|
||||||
year, month, day = value.year, value.month, value.day
|
year, month, day = value.year, value.month, value.day
|
||||||
elif isinstance(value, str):
|
elif isinstance(value, str):
|
||||||
if settings.USE_L10N:
|
match = self.date_re.match(value)
|
||||||
|
if match:
|
||||||
|
year, month, day = [int(val) for val in match.groups()]
|
||||||
|
elif settings.USE_L10N:
|
||||||
input_format = get_format('DATE_INPUT_FORMATS')[0]
|
input_format = get_format('DATE_INPUT_FORMATS')[0]
|
||||||
try:
|
try:
|
||||||
d = datetime.datetime.strptime(value, input_format)
|
d = datetime.datetime.strptime(value, input_format)
|
||||||
@@ -1012,9 +1015,6 @@ class SelectDateWidget(Widget):
|
|||||||
pass
|
pass
|
||||||
else:
|
else:
|
||||||
year, month, day = d.year, d.month, d.day
|
year, month, day = d.year, d.month, d.day
|
||||||
match = self.date_re.match(value)
|
|
||||||
if match:
|
|
||||||
year, month, day = [int(val) for val in match.groups()]
|
|
||||||
return {'year': year, 'month': month, 'day': day}
|
return {'year': year, 'month': month, 'day': day}
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
|
|||||||
Reference in New Issue
Block a user