【发布时间】:2019-04-27 23:12:42
【问题描述】:
我正在使用 django 的crispy-forms 应用程序来引导表单。我使用 bootstrap 4 时只使用 {form|crispy} 输出没有问题,但现在我想添加一个手风琴,crispy 正在为 bootstrap 3 而不是 4 生成 HTML。
我已经在 settings.py 中加入了这一行:
CRISPY_TEMPLATE_PACK = 'bootstrap4'
我的 view.py 看起来像这样:
from app.models import Model1
from crispy_forms.helper import FormHelper
from crispy_forms.layout import Layout, Fieldset, ButtonHolder, Submit
from crispy_forms.bootstrap import Accordion, AccordionGroup
class Model1Create(CreateView):
model = Model1
fields = ['field1', 'field2', 'field3']
template_name = "model1_form.html"
def get_form(self, form_class=None):
form = super().get_form(form_class)
form.helper = FormHelper()
form.helper.add_input(Submit('submit', 'Creates', css_class='btn-primary'))
form.helper.layout = Layout(
Accordion(
AccordionGroup('First Group',
'field1'
),
AccordionGroup('Second Group',
'field2',
'field3'
)
))
return form
任何想法为什么会发生这种情况?或者我应该怎么做才能强制引导 4 html?
提前感谢您的帮助!
【问题讨论】:
标签: python django bootstrap-4 django-crispy-forms