Я пытался добавить загрузчик даты начальной загрузки 4 из этого урока . Это прекрасно работает, когда я добавляю новую запись, но проблема в том, что при редактировании записи значение не появилось в поле. Я сделал следующее:
widgets.py
from django.forms import DateTimeInput, DateInput
class BootstrapDateTimePickerInput(DateTimeInput):
template_name = 'widgets/bootstrap_datetimepicker.html'
def get_context(self, name, value, attrs):
datetimepicker_id = 'datetimepicker_{name}'.format(name=name)
if attrs is None:
attrs = dict()
attrs['data-target'] = '#{id}'.format(id=datetimepicker_id)
attrs['class'] = 'form-control datetimepicker-input'
context = super().get_context(name, value, attrs)
context['widget']['datetimepicker_id'] = datetimepicker_id
return context
forms.py
class ClaimForm(forms.ModelForm):
purchase_date = forms.DateTimeField(input_formats=['%d/%m/%Y %H:%M'], widget=BootstrapDateTimePickerInput())
class Meta(forms.ModelForm):
model = Claim
fields = ['store', 'expense', 'rewards', 'money_receipt', 'purchase_date']
Я хочу добавить значение даты в поле ввода при редактировании формы.
Мы создали пакет Django Python для виджетов Bootstrap 4 для выбора даты и времени поверх библиотеки Tempus Dominus JS. Подробности здесь:
https://pypi.org/project/django-tempus-dominus/
В вашем случае что-то подобное будет работать: [114 ]
from tempus_dominus.widgets import DateTimePicker
purchase_date = forms.DateTimeField(
widget=DateTimePicker(),
initial='1980-01-01 12:00:00',
)
Удачи!