- commit
- 657451e1bdb08e26868985dba4b39bcbd14ecd42
- parent
- ff5835bb7f4a057cfcbd68533dfda66fd51a6e0e
- Author
- Tobias Bengfort <tobias.bengfort@posteo.de>
- Date
- 2018-12-28 18:16
fix format for date inputs native datepickers do not work with localized formats
Diffstat
| M | utils/datefields.py | 21 | +++++++++++++++------ |
1 files changed, 15 insertions, 6 deletions
diff --git a/utils/datefields.py b/utils/datefields.py
@@ -2,11 +2,15 @@ from django import forms 2 2 from django.db import models 3 3 from django.utils.translation import ugettext_lazy as _ 4 4 -1 5 DATE_FORMAT = '%Y-%m-%d' -1 6 5 7 DATE_DEFAULTS = { 6 8 'placeholder': _('yyyy-mm-dd'), 7 9 'type': 'date', 8 10 } 9 11 -1 12 TIME_FORMAT = '%H:%M' -1 13 10 14 TIME_DEFAULTS = { 11 15 'placeholder': _('HH:MM'), 12 16 'type': 'time', @@ -14,28 +18,33 @@ TIME_DEFAULTS = { 14 18 15 19 16 20 class DateInput(forms.DateInput):17 -1 def __init__(self, attrs={}):-1 21 def __init__(self, attrs={}, **kwargs): 18 22 defaults = TIME_DEFAULTS.copy() 19 23 defaults.update(attrs)20 -1 super().__init__(attrs=defaults)-1 24 super().__init__(format=DATE_FORMAT, attrs=defaults, **kwargs) 21 25 22 26 23 27 class TimeInput(forms.TimeInput):24 -1 def __init__(self, attrs={}):-1 28 def __init__(self, attrs={}, **kwargs): 25 29 defaults = DATE_DEFAULTS.copy() 26 30 defaults.update(attrs)27 -1 super().__init__(attrs=defaults)-1 31 super().__init__(format=TIME_FORMAT, attrs=defaults, **kwargs) 28 32 29 33 30 34 class DateTimeInput(forms.SplitDateTimeWidget):31 -1 def __init__(self, date_attrs={}, time_attrs={}):-1 35 def __init__(self, date_attrs={}, time_attrs={}, **kwargs): 32 36 date_defaults = DATE_DEFAULTS.copy() 33 37 date_defaults.update(date_attrs) 34 38 35 39 time_defaults = TIME_DEFAULTS.copy() 36 40 time_defaults.update(time_attrs) 37 4138 -1 super().__init__(date_attrs=date_defaults, time_attrs=time_defaults)-1 42 super().__init__( -1 43 date_format=DATE_FORMAT, -1 44 date_attrs=date_defaults, -1 45 time_format=TIME_FORMAT, -1 46 time_attrs=time_defaults, -1 47 **kwargs) 39 48 40 49 41 50 class DateFormField(forms.DateField):