Django Хрустящие формы вкладка не может измениться css - PullRequest
1 голос
/ 13 марта 2020

В моей форме я хотел бы изменить стиль вкладок, если я добавлю css_class в TabHolder, он не будет отображаться, он просто сохранит класс по умолчанию. Вот init модели.

def __init__(self, *args, **kwargs):
    self.user = kwargs.pop('user', None)
    super().__init__(*args, **kwargs)
    self.helper = FormHelper()
    self.helper.form_tag = True
    self.helper.form_method = 'POST'
    self.helper.layout = Layout(
        TabHolder(
            Tab(_('Company'),
                'name',
                css_class='nav-item active'),
            Tab('Address',
                'country',
                css_class='nav-item'),
            Tab('Info',
                'email', 'phone', 'website',
                css_class='nav-item'),
            css_class='nav nav-tabs nav-tabs-highlight nav-justified mb-0'
        ),
        ButtonHolder(
            Submit('submit', "Submit form", css_class='btn btn-primary')
        ),
    )

Как вы можете видеть в TabHolder, есть css_class = 'nav nav-tabs nav-tabs-highlight nav-justified mb-0' но он продолжает показывать только css_class = 'nav nav-tabs'

1 Ответ

1 голос
/ 13 марта 2020

CSS_class жестко запрограммирован в шаблоне вкладки. Самым простым решением, вероятно, является перегрузка шаблона.

https://github.com/django-crispy-forms/django-crispy-forms/blob/master/crispy_forms/templates/bootstrap4/layout/tab.html

...