@@ -308,9 +308,13 @@ def __init__(self, attrs=None, format=None):
308
308
super (DateInput , self ).__init__ (attrs )
309
309
if format :
310
310
self .format = format
311
+ self .manual_format = True
312
+ else :
313
+ self .format = formats .get_format ('DATE_INPUT_FORMATS' )[0 ]
314
+ self .manual_format = False
311
315
312
316
def _format_value (self , value ):
313
- if self .is_localized :
317
+ if self .is_localized and not self . manual_format :
314
318
return formats .localize_input (value )
315
319
elif hasattr (value , 'strftime' ):
316
320
value = datetime_safe .new_date (value )
@@ -336,9 +340,13 @@ def __init__(self, attrs=None, format=None):
336
340
super (DateTimeInput , self ).__init__ (attrs )
337
341
if format :
338
342
self .format = format
343
+ self .manual_format = True
344
+ else :
345
+ self .format = formats .get_format ('DATETIME_INPUT_FORMATS' )[0 ]
346
+ self .manual_format = False
339
347
340
348
def _format_value (self , value ):
341
- if self .is_localized :
349
+ if self .is_localized and not self . manual_format :
342
350
return formats .localize_input (value )
343
351
elif hasattr (value , 'strftime' ):
344
352
value = datetime_safe .new_datetime (value )
@@ -364,9 +372,13 @@ def __init__(self, attrs=None, format=None):
364
372
super (TimeInput , self ).__init__ (attrs )
365
373
if format :
366
374
self .format = format
375
+ self .manual_format = True
376
+ else :
377
+ self .format = formats .get_format ('TIME_INPUT_FORMATS' )[0 ]
378
+ self .manual_format = False
367
379
368
380
def _format_value (self , value ):
369
- if self .is_localized :
381
+ if self .is_localized and not self . manual_format :
370
382
return formats .localize_input (value )
371
383
elif hasattr (value , 'strftime' ):
372
384
return value .strftime (self .format )
@@ -751,12 +763,8 @@ class SplitDateTimeWidget(MultiWidget):
751
763
time_format = TimeInput .format
752
764
753
765
def __init__ (self , attrs = None , date_format = None , time_format = None ):
754
- if date_format :
755
- self .date_format = date_format
756
- if time_format :
757
- self .time_format = time_format
758
- widgets = (DateInput (attrs = attrs , format = self .date_format ),
759
- TimeInput (attrs = attrs , format = self .time_format ))
766
+ widgets = (DateInput (attrs = attrs , format = date_format ),
767
+ TimeInput (attrs = attrs , format = time_format ))
760
768
super (SplitDateTimeWidget , self ).__init__ (widgets , attrs )
761
769
762
770
def decompress (self , value ):
0 commit comments