【问题标题】:Upgrading Django 1.11 to 2.2 - Crispy form troubles将 Django 1.11 升级到 2.2 - Crispy form 问题
【发布时间】:2020-04-05 13:35:29
【问题描述】:

我最近将一个项目从 Django 1.11 升级到 2.2,同时将所有必要的包和 python 3.5 升级到 3.7。我已经设法修复了升级到 2.2 django 需要更改的所有内容。

在其他软件包中,我还将 django-crispy-forms1.6 升级到 1.9 以与 Django 2.2 兼容。

我面临的问题是,我在整个项目中以所有清晰形式使用的 SplitDateTimeWidget 没有正确显示。它没有使用 bootstrap3 样式,如下图所示:

有其他人在升级时遇到过这个问题吗?有什么解决方法?

谢谢!

【问题讨论】:

    标签: django django-crispy-forms django-2.2


    【解决方案1】:

    如果有人遇到同样的情况,我发现了问题。

    新版本在输入字段中不包含类“form-control”。我将小部件更改为:

    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)
    

    现在正在正常工作。

    【讨论】:

      猜你喜欢
      • 2019-09-21
      • 2020-08-25
      • 2014-06-16
      • 2019-04-13
      • 1970-01-01
      • 2019-03-05
      • 2018-08-20
      • 2017-12-02
      相关资源
      最近更新 更多