Виджет DateTimeInput() помещает случайную букву T между датой и временем, вызывая ошибку ValidationError

У меня есть поле datetime, в которое я ввожу данные, используя следующее поле формы:

delivery_pickup = forms.DateTimeField(label = "Delivery or Pickup Appointment", 
                                    required = False,
                                    widget=forms.DateTimeInput(attrs={'type':'datetime-local'}))

Красивый маленький виджет datetime появляется автоматически благодаря объявлению атрибута type. Проблема в том, что когда я пытаюсь отправить данные с помощью виджета, я получаю ошибку, а когда я удаляю виджет и смотрю на вход как на простую строку, она включает случайную букву T между датой и временем, как показано ниже: 2021-09-26T13:17

Удаление T вручную приводит к исчезновению ошибки. Каков наилучший способ удаления буквы T? Форматировать ли строку в поле ввода? Создать чистый метод? Какая-то другая техника? Любая помощь будет принята с благодарностью.

Это решение решило проблему: Django datetime not validating right

class MyIdealDateForm(forms.ModelForm):
    start = forms.DateTimeField(
        input_formats = ['%Y-%m-%dT%H:%M'],
        widget = forms.DateTimeInput(
            attrs={
                'type': 'datetime-local',
                'class': 'form-control'},
            format='%Y-%m-%dT%H:%M')
    )

По сути, аргументы input_formats внутри поля и format внутри виджета должны были совпадать, прежде чем форма могла быть проверена... Теперь мне нужно вернуть последние несколько часов жизни

Вернуться на верх