Обновление Django 1.11 до 2.2 - проблемы с хрустящей формой - PullRequest
0 голосов
/ 05 апреля 2020

Я недавно обновил проект с Django 1.11 до 2.2 вместе с обновлением всех необходимых пакетов и с python 3.5 до 3.7. Мне удалось исправить все, что нужно было изменить, чтобы обновиться до 2.2 django.

Среди других пакетов я также обновил django -crispy-forms с От 1,6 до 1,9 для совместимости с Django 2,2.

Проблема, с которой я сталкиваюсь, заключается в том, что мой SplitDateTimeWidget , который я использую во всех четких формах по всему проекту, не отображается должным образом. Он не использует стиль bootstrap3, как показано ниже:
crispy forms and djnago split date time widget

Кто-нибудь еще сталкивался с этой проблемой при обновлении и каковы временные решения?

Спасибо вы!

1 Ответ

0 голосов
/ 05 апреля 2020

Я выяснил проблему Если кто-то сталкивается с такой же ситуацией.

Новая версия не включает класс "управление формой" в поле ввода. Я изменил свой виджет на:

class TimepieceSplitDateTimeWidget(forms.SplitDateTimeWidget):

def __init__(self, *args, **kwargs):
    kwargs.setdefault('date_format', DATE_FORM_FORMAT)
    kwargs['attrs'] = {'class': 'form-control',}  # ADDED THIS
    super(TimepieceSplitDateTimeWidget, self).__init__(*args, **kwargs)

И теперь работает как надо.

...